IT评测·应用市场-qidao123.com
标题:
解析Collections工具类重要功能
[打印本页]
作者:
大号在练葵花宝典
时间:
4 天前
标题:
解析Collections工具类重要功能
Collections 是 JDK 提供的一个工具类,位于 java.util 包下,提供了一系列的静态方法,方便我们对聚集进行各种利用,算是聚集框架的一个大管家。
大致看一下方法名和参数就能知道这个方法是干嘛的:
排序利用
reverse(List list):反转顺序
shuffle(List list):洗牌,将顺序打乱
sort(List list):自然升序
sort(List list, Comparator c):按照自定义的比力器排序
swap(List list, int i, int j):将 i 和 j 位置的元素交换位置
来看例子:
List<String> list = new ArrayList<>();
list.add("seven1");
list.add("seven2");
list.add("seven3");
list.add("seven4");
list.add("seven5");
System.out.println("原始顺序:" + list);
// 反转
Collections.reverse(list);
System.out.println("反转后:" + list);
// 洗牌
Collections.shuffle(list);
System.out.println("洗牌后:" + list);
// 自然升序
Collections.sort(list);
System.out.println("自然升序后:" + list);
// 交换
Collections.swap(list, 2,4);
System.out.println("交换后:" + list);
复制代码
输出后:
原始顺序:[seven1, seven2, seven3, seven4, seven5]
反转后:[seven5, seven4, seven3, seven2, seven1]
洗牌后:[seven5, seven4, seven1, seven3, seven2]
自然升序后:[seven1, seven2, seven3, seven4, seven5]
交换后:[seven1, seven2, seven5, seven4, seven3]
复制代码
查找利用
binarySearch(List list, Object key):二分查找法,前提是 List 已经排序过了
max(Collection coll):返回最大元素
max(Collection coll, Comparator comp):根据自定义比力器,返回最大元素
min(Collection coll):返回最小元素
min(Collection coll, Comparator comp):根据自定义比力器,返回最小元素
frequency(Collection c, Object o):返回指定对象出现的次数
来看例子:
System.out.println("最大元素:" + Collections.max(list));
System.out.println("最小元素:" + Collections.min(list));
System.out.println("出现的次数:" + Collections.frequency(list, "seven1"));
// 没有排序直接调用二分查找,结果是不确定的
System.out.println("排序前的二分查找结果:" + Collections.binarySearch(list, "seven2"));
Collections.sort(list);
// 排序后,查找结果和预期一致
System.out.println("排序后的二分查找结果:" + Collections.binarySearch(list, "seven2"));
复制代码
输出后:
最大元素:seven6
最小元素:seven2
出现的次数:0
排序前的二分查找结果:-1
排序后的二分查找结果:0
填充后的结果:[seven6, seven6, seven6, seven6, seven6]
复制代码
填充聚集
<ul>fill(List list, Object obj):利用指定对象填充
addAll(Collection
欢迎光临 IT评测·应用市场-qidao123.com (https://dis.qidao123.com/)
Powered by Discuz! X3.4