Collections
排序 Collections.sort(list)
最大 Collections.max(list)
全部替换 Collections.fill(List<T> list, String str)
反转 Collections.reverseOder()
随机打乱 Collections.shuffle()
Arrays
Arrays.toString()
Arrays.asList(); 将数组变成集合,不可以使用集合的增删方法,因为数组的长度是固定的.
Arrays.binarySearch();如果数组中元素都是对象,那么变成集合时,数组中的元素就直接转成集合中元素;
如果数组中的元素是基本数据类型,那么 会将该数组作为集合中的元素存在.
集合变数组:
Collection 接口中的 toArray方法;
1,指定类型的数组到底要定义多长呢?
当指定类型的数组长度小于集合的size,那么该方法内部会创建一个新数组,长度为集合的size.
如果指定类型的数组长度大雨了集合的size,就不会新创建数组,而是使用传递进来的数组.
所以创建一个刚刚好的数组最优.
2,为什么要将集合边数组?
为了限定对元素的操作.
高级for循环:
格式:for (数据类型 变量名: 被遍历的集合(Collection)或数组)//for(String s:al)
{
}
只能获取集合元素,但是不能对集合进行操作.
而迭代器除了遍历,还可以对集合进行remove操作.
如果是ListIterator,还可以在遍历的过程中对集合进行增删改查动作.
高级for和传统for的区别:
高级for必须有被遍历的目标.
可变参数
就是上一种数组的简写形式,不用每一次都手动建立数组对象,只要将要操作的元素作为参数传递即可,
隐式将这些参数封装成了数组.
方法的可变参数在使用时,可变参数一定要定义在参数列表的最后.
StaticImport 静态导入
import static java.util.Arrays.*;导入的是Arrays这个类中的所有静态成员.
import java.lang.System.*; 导入了System类中所有的静态成员;
当类名重名时,需要指定具体包名;
当方法重名时,指定具体所属的对象或类. |
|