Java Collections sort()方法与示例
集合类sort()
方法
语法:
public static void sort(List l); public static void sort(List l, Comparator com);
在java.util包中可以使用sort()方法。
sort(Listl)方法用于根据自然排序对给定列表进行排序(即排序将以升序排列)。
sort(Listl,Comparatorcom)方法用于根据自定义排序对给定列表进行排序(即,排序将基于给定的Comparatorcom)。
这些方法在对给定列表进行排序时可能会引发异常。
ClassCastException:当给定列表元素相互不可比时,可能会引发此异常。
UnsupportedOperationException:当给定列表不支持set操作时,可能引发此异常。
这些是静态方法,可以通过类名进行访问,如果尝试使用类对象访问这些方法,则也不会出现任何错误。
参数:
在第一种情况下,sort(Listl),
列表l–表示要排序的列表。
在第一种情况下,sort(Listl,Comparatorcom),
列表l–表示要排序的列表。
比较器com–表示比较器,用于计算给定列表的顺序(升序或降序)。
返回值:
在这两种情况下,方法的返回类型均为void,它不返回任何内容。
示例
//Java程序演示示例 //的sort()的类别方法 import java.util.*; public class SortOfCollections { public static void main(String args[]) { //实例化一个ArrayList- ArrayList arr_l = new ArrayList(); //通过使用add()方法是添加 //数组列表中的对象 arr_l.add(20); arr_l.add(10); arr_l.add(50); arr_l.add(40); arr_l.add(80); //显示ArrayList- System.out.println("arr_l : " + arr_l); //通过使用sort(arr_l,Comparator)方法是 //进行排序 Collections.sort(arr_l, null); //显示ArrayList- System.out.println("Collections.sort(arr_l, null): " + arr_l); //通过使用sort(arr_l)方法是 //对arraylist进行排序 //比较器对象 Collections.sort(arr_l); //显示ArrayList- System.out.println("Collections.sort(arr_l): " + arr_l); } }
输出结果
arr_l : [20, 10, 50, 40, 80] Collections.sort(arr_l, null): [10, 20, 40, 50, 80] Collections.sort(arr_l): [10, 20, 40, 50, 80]