Collections,集合框架工具类,里面的方法都是静态的;
Collections.sort(List<T> list);按自然顺序排序
Collections.reverse(List<T> list); 强行将按自然顺序排列的顺序逆转,可以自己加入比较器,按自定义比较方法逆转。
Collections.replaceAll(List<T> list,T oldValue, T newValue);
Collections.fill(List<? super T>list, T obj);将指定元素替换列表中的所有元素。
Collections.shuffle(List<?> list);使用默认随机源对指定列表进行替换。
Collections.synchronizedList(Collection<T> c);集合框架工具类中,将非同步的集合变成同步的集合。
List<String> list=new ArrayList<String>();
list.add("asd");
list.add("ghjkl");
list.add("haha");
list.add("yu");
Collections.replaceAll(list, "yu", "hui");
System.out.println(list);
Collections.shuffle(list);//重组
System.out.println(list);
Collections.synchronizedList(list);//将非同步的集合变成同步的
Collections.fill(list, "oo");//将指定元素替换指定列表中的所有元素
System.out.println(list);
List<String> list=new ArrayList<String>();
list.add("asd");
list.add("ghjkl");
list.add("haha");
list.add("yu");
Collections.sort(list);
System.out.println(list);
Collections.sort(list,Collections.reverseOrder());
System.out.println(list);
Collections.sort(list,new Comparator<String>(){
public int compare(String t1,String t2){
int temp=t2.compareTo(t1);
return temp;
}});
System.out.println(list);
Arrays集合框架工具类,里面的方法都是静态的;
Arrays.binarySearch();二分查找
Arrays.equals();两个数组相等的判定:两个数组包含相同数量的元素,并且两个数组中的所有相应元素都是相等的。
Arrays.sort();排序
Arrays.asList(T... a)返回指定数组的列表视图List<T>
好处:可以使用集合的方法操作数组中的元素;
注意:数组的长度是固定的,所以对于集合的增删方法是不可以使用的,否则会发生异常
如果数组中的元素是对象,那么转成集合时,直接将数组中的元素作为集合中的元素进行集合存储。
如果数组中的元素是基本数据类型数值,那么会将该数组作为集合中的元素进行存储。
集合转出数组可以使用collection接口中的toArray方法
toArray方法需要传入一个指定类型的数组时,长度如何定义?
如果长度小于集合的size,那么该方法会创建一个同类型的并和集合相同size的数组;
如果长度大于集合的size,那么该方法就会使用指定的数组,并存储集合中的元素,其他位置,默认为null。所以建议,最好长度就指定为集合的size