2011-06-01 288 views

回答

1

只是實現Comperator和使用Arrays.sort()你認爲

0

您可以創建一個類

class Foo { 
int no; 
String val; 
} 

Collections.sort(listOfFoo,new Comparator<Foo>(){public int compare(Foo f1, Foo f2){ 
//your logic goes here 
}}); 
+1

不應該是compare()而不是compareTo()? – amit 2011-06-01 09:03:13

+0

@amit,是「Comparable」和這個 – 2011-06-01 09:04:07

+0

之間的混淆幫助乾杯,只是不得不重構arraylist使用調用排序列表。 > listname.SortedArray(); – daverocks 2011-06-01 13:25:34

2

如果節點實現java.lang.Comparable,您可以定義自定義排序。如果您無法更改/修改節點類,那麼您可以實現java.util.Comparator,並使用Collection.sort(List<T> list, Comparator<? super T> c) 來自Bloch的Effective Java具有關於此主題的出色部分。

+0

乾杯的幫助,只需重構arraylist使用調用排序列表。 > listname.SortedArray(); – daverocks 2011-06-01 13:25:55