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*/
}
}
现在我该怎么做?我是这个领域的新人。如果这个愚蠢,那么我会删除它,但请帮助我,我真的需要这个来回答。
答案 0 :(得分:5)
从Java 8开始,List
采用sort
方法,该方法采用Comparator
参数。
字符串列表的自然顺序是字母顺序。
要按自然顺序对列表中的项目进行排序,您可以使用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);
答案 1 :(得分:2)
你可以在循环前使用Comparator
:
Collections.sort(arraylist , new Comparator<String>() {
public int compare(String o1, String o2) {
return o1.compareTo(o2);
}
});
答案 2 :(得分:2)
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);
}
}
}
答案 3 :(得分:1)
你可以这样做:
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);
}
}
}
这将按字母顺序排序然后反转它。