目录
一、Collections
所在包:import java.util.Collections;
常见用法:
1.最大值/最小值
public static void testCollections() {
List<Integer> list = new ArrayList<>();
list.add(4);
list.add(1);
list.add(3);
list.add(2);
Integer max = Collections.max(list);
System.out.println("最大值:" + max); // 4
Integer min = Collections.min(list);
System.out.println("最小值:" + min); // 1
}
2.排序
public static void testCollections() {
List<Integer> list = new ArrayList<>();
list.add(4);
list.add(1);
list.add(3);
list.add(2);
Collections.sort(list);
System.out.println("正序:" + list); //正序:[1, 2, 3, 4]
Collections.reverse(list);
System.out.println("倒序:" + list); //倒序:[4, 3, 2, 1]
}
Collections中还有很多相关方法,感兴趣的可以自己尝试,在此就不一一列举。
二、CollectionUtils
所在包:import org.apache.commons.collections4.CollectionUtils;
依赖:
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.4</version>
</dependency>
常见用法:
1.并集/交集/补集/差集
public static void testCollectionUtils() {
List<Integer> list1 = new ArrayList<>();
list1.add(4);
list1.add(1);
list1.add(3);
list1.add(2);
List<Integer> list2 = new ArrayList<>();
list2.add(5);
list2.add(4);
// 获取并集
Collection<Integer> unionList = CollectionUtils.union(list1, list2);
System.out.println("并集:" + unionList);
// 获取交集
Collection<Integer> intersectionList = CollectionUtils.intersection(list1, list2);
System.out.println("交集:" + intersectionList);
// 获取交集的补集
Collection<Integer> disjunctionList = CollectionUtils.disjunction(list1, list2);
System.out.println("交集的补集:" + disjunctionList);
// 获取差集
Collection<Integer> subtractList = CollectionUtils.subtract(list1, list2);
System.out.println("差集" + subtractList);
}
结果如下:
2.集合是否为空
public static void testCollectionUtils() {
List<String> stringList = new ArrayList<>();
boolean empty = CollectionUtils.isEmpty(stringList);
System.out.println("集合是否为空:"+ empty); // 集合是否为空:true
}
3.两个集合是否相等
public static void testCollectionUtils() {
// 判断两个集合是否相等
List<Integer> list3 = new ArrayList<>();
list3.add(3);
list3.add(4);
List<Integer> list4 = new ArrayList<>();
list4.add(3);
list4.add(4);
boolean equalCollection1 = CollectionUtils.isEqualCollection(list3, list4);
System.out.println("两个集合是否相等:" + equalCollection1); // 两个集合是否相等:true
// 加一个元素
list4.add(5);
boolean equalCollection2 = CollectionUtils.isEqualCollection(list3, list4);
System.out.println("两个集合是否相等:" + equalCollection2); // 两个集合是否相等:false
}
同样CollectionUtils也还有很多实用的方法,可自行尝试。
学会运用一些开发工具包能一定程度上提高日常的开发效率,本文仅起到一个抛砖引玉的作用。