【问题标题】:Collections.sort() in JavaJava 中的 Collections.sort()
【发布时间】:2013-02-11 15:23:50
【问题描述】:
我正在LinkedList 中编写sortedAdd(T node) 方法。如何比较 node.key_ 和 current.key_?我不能使用<(升序),因为它是通用的。
public void sortedAdd(T node){
...
Node<T> current = header;
while (current != null) {
if (node.key_ < current.key_) {
...
}
}
}
【问题讨论】:
标签:
java
list
sorting
object
collections
【解决方案1】:
试试这个伙伴:
List<String> list = new ArrayList<String>();
list.add("D");
list.add("B");
list.add("A");
Collections.sort(list);
为了说明,参数化类型(尖括号中的那个)必须实现接口Comparable。
String 实现 Comparable。
【解决方案2】:
试试
List<String> unsortList = new ArrayList<String>();
unsortList.add("CCC");
unsortList.add("111");
unsortList.add("AAA");
unsortList.add("BBB");
unsortList.add("ccc");
unsortList.add("bbb");
unsortList.add("aaa");
unsortList.add("333");
unsortList.add("222");
//sort the list
Collections.sort(unsortList);
System.out.println("ArrayList is sorted");
for(String temp: unsortList){
System.out.println(temp);
}
输出
ArrayList is sorted
111
222
333
AAA
BBB
CCC
aaa
bbb
ccc