[英]Sort ArrayList reverse without implementing any method by user?
import java.util.*;
public class Details {
public static void main(String args[]){
ArrayList<String> arraylist = new ArrayList<String>();
arraylist.add("AA");
arraylist.add("ZZ");
arraylist.add("CC");
arraylist.add("FF");
System.out.println("Before Sorting:");
for(String str: arraylist){
System.out.println(str);
}
/* Sorting in decreasing order*/
}
}
現在我該怎么做? 我是這個領域的新人。 如果這個愚蠢然后我會刪除它但請幫助我我真的需要這個來回答。
從Java 8開始, List
有一個采用Comparator
參數的sort
方法。 字符串列表的自然順序是字母順序。 要按照自然順序對列表中的項目進行排序,可以使用Comparator.naturalOrder()
作為Comparator
。 要按照自然順序的反向對列表項進行排序,可以使用Comparator.reverseOrder()
。
List<String> list = Arrays.asList("AA", "ZZ", "CC", "FF");
list.sort(Comparator.reverseOrder());
System.out.println(list);
如果你使用的是舊版本的Java,雖然我沒有找到合理的理由,那么你可以使用Collections.sort
和Collections.reverseOrder()
代替:
List<String> list = Arrays.asList("AA", "ZZ", "CC", "FF");
Collections.sort(list, Collections.reverseOrder());
System.out.println(list);
你可以在循環之前使用Comparator
:
Collections.sort(arraylist , new Comparator<String>() {
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
import java.util.*; public class Details {
public static void main(String args[]){
ArrayList<String> arraylist = new ArrayList<String>();
arraylist.add("AA");
arraylist.add("ZZ");
arraylist.add("CC");
arraylist.add("FF");
System.out.println("Before Sorting:");
for(String str: arraylist){
System.out.println(str);
}
/* Sorting in decreasing order*/
Collections.sort(arraylist);
Collections.reverse(arraylist);
for(String str: arraylist){
System.out.println(str);
}
}
}
你可以這樣做:
import java.util.*;
public class TicTacToe {
public static void main(String args[]){
ArrayList<String> arraylist = new ArrayList<String>();
arraylist.add("AA");
arraylist.add("ZZ");
arraylist.add("CC");
arraylist.add("FF");
Collections.sort(arraylist);
System.out.println("Before Sorting:");
for(String str: arraylist){
System.out.println(str);
}
Collections.sort(arraylist, Collections.reverseOrder());
/* Sorted List in reverse order*/
System.out.println("ArrayList in descending order:");
for(String str: arraylist){
System.out.println(str);
}
}
}
這將按字母順序排序然后反轉它。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.