Collections类常用方法介绍
Collections类提供了很多的静态的方法,可直接调用,用于操作集合,今天给大家介绍几种简单常用的方法。
-
public static void shuffle(List<?> list):打乱集合顺序。
-
public static void sort(List list):将集合中元素按照默认规则排序。
-
public static void sort(List list,Comparator<? super T> ):将集合中元素按照指定规则排序。
-
public static boolean addAll(Collection<? super T> c, T… elements) :一次添加多个元素,只支持单列集合(单列集合指的是Collection接口下的所有集合)。
-
public static void copy(List<? super T> dest, List<? extends T> src) :把一个集合元素复制到另一个集合中,只支持List集合
-
public static boolean disjoint(Collection<?> c1, Collection<?> c2) :判断两个集合中是否存在相同的元素,只支持单列集合。
-
public static void fill(List<? super T> list, T obj) :把集合中的所有元素都替换成、指定元素,只支持List集合
-
public static int frequency(Collection<?> c, Object o) :返回指定集合中的指定元素,没有指定元素返回0
-
public static T max(Collection<? extends T> coll) :根据自然顺序,返回集合中最大元素。
-
public static T max(Collection<? extends T> coll, Comparator<? super T> comp) :根据指定的比较器的顺序,返回最大元素。
-
public static T min(Collection<? extends T> coll) :根据自然顺序,返回集合中最小元素。
-
public static T min(Collection<? extends T> coll, Comparator<? super T> comp) :根据指定的比较器的顺序,返回给定集合的最小元素。
-
public static boolean replaceAll(List list, T oldVal, T newVal) :将集合中所有相同元素,替换成指定元素
-
public static void reverse(List<?> list) :反转集合顺序,只支持List。
-
public static void swap(List<?> list, int i, int j) :将集合中的指定元素与该元素交换。
Comparator底层
Comparator底层是用compareTo方法实现比较的。
//创建Integer类型的集合
ArrayList<Integer> list = new ArrayList<>();
//添加元素
Collections.addAll(list,1,3,8,4);
//使用sort方法并指定规则排序
Collections.sort(list, new Comparator<Integer>() {
@Override
public int compare(Integer o1, Integer o2) {
//如果是int类型的参数也可以这样写return o1-o2;但是其他类型不可以
return o1.compareTo(o2);
}
});
//打印结果
System.out.println(list);
如果是int类型的参数也可以这样写
return o1-o2;
但是其他类型不可以
这些方法使用都很简单 都是静态方法 就不在一一演示了 直接使用Collections.方法名就可以了。