JAVAutil。收藏。排序() 方法在java中存在。util。收藏课。它用于对指定区域中存在的元素进行排序 列表 按升序排列的集合。 它的工作原理与 JAVAutil。数组。排序() 方法,但它比它更好,因为它可以对数组元素以及链表、队列和其中存在的更多元素进行排序。
null
public static void sort(List myList) myList : A List type object we want to sort. This method doesn't return anything
例子:
Let us suppose that our list contains {"Geeks For Geeks", "Friends", "Dear", "Is", "Superb"} After using Collection.sort(), we obtain a sorted list as {"Dear", "Friends", "Geeks For Geeks", "Is", "Superb"}
按升序排序ArrayList
// Java program to demonstrate working of Collections.sort() import java.util.*; public class Collectionsorting { public static void main(String[] args) { // Create a list of strings ArrayList<String> al = new ArrayList<String>(); al.add( "Geeks For Geeks" ); al.add( "Friends" ); al.add( "Dear" ); al.add( "Is" ); al.add( "Superb" ); /* Collections.sort method is sorting the elements of ArrayList in ascending order. */ Collections.sort(al); // Let us print the sorted list System.out.println( "List after the use of" + " Collection.sort() :" + al); } } |
输出:
List after the use of Collection.sort() : [Dear, Friends, Geeks For Geeks, Is, Superb]
按降序排列ArrayList
// Java program to demonstrate working of Collections.sort() // to descending order. import java.util.*; public class Collectionsorting { public static void main(String[] args) { // Create a list of strings ArrayList<String> al = new ArrayList<String>(); al.add( "Geeks For Geeks" ); al.add( "Friends" ); al.add( "Dear" ); al.add( "Is" ); al.add( "Superb" ); /* Collections.sort method is sorting the elements of ArrayList in ascending order. */ Collections.sort(al, Collections.reverseOrder()); // Let us print the sorted list System.out.println( "List after the use of" + " Collection.sort() :" + al); } } |
输出:
List after the use of Collection.sort() : [Superb, Is, Geeks For Geeks, Friends, Dear]
根据用户定义的条件对ArrayList进行排序。 我们可以使用 比较器接口 为此目的。
// Java program to demonstrate working of Comparator // interface and Collections.sort() to sort according // to user defined criteria. import java.util.*; import java.lang.*; import java.io.*; // A class to represent a student. class Student { int rollno; String name, address; // Constructor public Student( int rollno, String name, String address) { this .rollno = rollno; this .name = name; this .address = address; } // Used to print student details in main() public String toString() { return this .rollno + " " + this .name + " " + this .address; } } class Sortbyroll implements Comparator<Student> { // Used for sorting in ascending order of // roll number public int compare(Student a, Student b) { return a.rollno - b.rollno; } } // Driver class class Main { public static void main (String[] args) { ArrayList<Student> ar = new ArrayList<Student>(); ar.add( new Student( 111 , "bbbb" , "london" )); ar.add( new Student( 131 , "aaaa" , "nyc" )); ar.add( new Student( 121 , "cccc" , "jaipur" )); System.out.println( "Unsorted" ); for ( int i= 0 ; i<ar.size(); i++) System.out.println(ar.get(i)); Collections.sort(ar, new Sortbyroll()); System.out.println( "Sorted by rollno" ); for ( int i= 0 ; i<ar.size(); i++) System.out.println(ar.get(i)); } } |
输出:
Unsorted 111 bbbb london 131 aaaa nyc 121 cccc jaipur Sorted by rollno 111 bbbb london 121 cccc jaipur 131 aaaa nyc
数组。排序() vs系列。排序() 数组。排序也适用于原始数据类型的数组。 收藏 .sort()适用于对象集合,如 ArrayList , 链表 等
我们可以使用集合。sort()在创建给定数组项的ArrayList后对数组进行排序。
// Using Collections.sort() to sort an array import java.util.*; public class Collectionsort { public static void main(String[] args) { // create an array of string objs String domains[] = { "Practice" , "Geeks" , "Code" , "Quiz" }; // Here we are making a list named as Collist List colList = new ArrayList(Arrays.asList(domains)); // Collection.sort() method is used here // to sort the list elements. Collections.sort(colList); // Let us print the sorted list System.out.println( "List after the use of" + " Collection.sort() :" + colList); } } |
输出:
List after the use of Collection.sort() : [Code, Geeks, Practice, Quiz]
本文由 莫希特·古普塔 .文章希望对受尊敬的极客有用。 如果你喜欢Geeksforgek,并且想贡献自己的力量,你也可以使用 贡献极客。组织 或者把你的文章寄到contribute@geeksforgeeks.org.看到你的文章出现在Geeksforgeks主页上,并帮助其他极客。 .
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END