java零基础的坎坷之路【40】——Collections类相关功能
程序员文章站
2022-03-09 19:39:32
...
1、Collections类概述:
针对集合操作的工具类。
2、Collection和Collections的区别?
Collection是接口,具有子接口List和Set
Collections是工具类,针对集合操作。
3、Collections类成员方法:
public static <T> void sort(List<T> list):排序,默认情况下是自然排序。
public static <T> int binarySearch(List<T> list,T key):二分查找某个键。
public static <T> T max(Collection<?> coll):集合最大值。
public static void reverse(List<T> list):集合反转。
public static void shuffle(List<?> list):集合随机置换。
案例:ArrayList存储自定义对象排序
import java.util.ArrayList;
import java.util.Collections;
import java.util.Comparator;
/**
* ArrayList存储自定义对象排序
*
* @author Administrator
*
*/
public class ArrayListSortDemo {
public static void main(String[] args) {
ArrayList<Beauty> arr = new ArrayList<Beauty>();
Beauty b1 = new Beauty("徐冬冬", 20);
Beauty b2 = new Beauty("柳岩", 25);
Beauty b3 = new Beauty("井下惠子", 28);
Beauty b4 = new Beauty("田下芳子", 19);
arr.add(b1);
arr.add(b2);
arr.add(b3);
arr.add(b4);
//传入自定义比较器
Collections.sort(arr, new Comparator<Beauty>() {
@Override
public int compare(Beauty b1, Beauty b2) {
int num1 = b1.getAge() - b2.getAge();
int num2 = num1 == 0 ? b1.getName().compareTo(b2.getName()) : num1;
return num2;
}
});
for (Beauty b : arr) {
System.out.println(b);
}
}
}
上一篇: 集合工具类