本问介绍了Collections工具类两种sort()方法,具体如下:
一、Collections工具类两种sort()方法
格式一: public static <T extends Comparable<? super T>> void sort(List<T> list)
说明:该方法中的泛型<T>都是Comparable接口的子类,即只有是Comparable接口子类类型的数据,才能进行比较排序。如果其他类型的数据要进行比较排序,必须继承Comparable接口并
覆写equals()和compareTo()方法。其中如String类、Integer类都是Comparable接口子类,可以进行排序,而基本类型不能进行sort排序。比较项目在类内指定
格式二:public static <T> void sort(List<T> list, Comparator<? super T> c)
说明:该方法中指定比较方式Comparator<? super T> c,即c必须实现Comparator<? super T>接口,覆写compareTo()方法指定比较项目。比较项目在类外指定,比较灵活
二、示例
示例中获取字符串和数字的公用方法:
1、对Integer泛型的List进行排序
2、对String泛型的List进行排序
3、对其他类型泛型的List进行排序
Course类实现
Student类实现Comparable接口,类内设置比较项
实现Comparator接口,类外设置比较项
比较Student类