2014-03-01 203 views
-1

我想根據列對Arraylist進行排序。如何根據列對數組列表進行排序?

實施例:

輸入: -

5.1,3.5,1.4,0.2,Iris-setosa 

4.9,3.0,1.4,0.2,Iris-setosa 

4.7,3.2,1.3,0.2,Iris-setosa 

4.6,3.1,1.5,0.2,Iris-setosa 

5.0,3.6,1.4,0.2,Iris-setosa 

輸出: -

對於IST柱對於第二柱

4.6,3.1,1.5,0.2,Iris-setosa 

4.7,3.2,1.3,0.2,Iris-setosa 

4.9,3.0,1.4,0.2,Iris-setosa 

5.0,3.6,1.4,0.2,Iris-setosa 

5.1,3.5,1.4,0.2,Iris-setosa 

4.9,3.0,1.4,0.2,Iris-setosa 

4.6,3.1,1.5,0.2,Iris-setosa 

4.7,3.2,1.3,0.2,Iris-setosa 

5.1,3.5,1.4,0.2,Iris-setosa 

5.0,3.6,1.4,0.2,Iris-setosa 

同樣直到倒數第二列

+6

一個ArrayList沒有列,只有元素......你能表現出一定的代碼? – assylias

+1

它是元素ArrayList的ArrayList嗎? –

+0

列的意思是,我們可以用標記器將它分開 – Dahlia

回答

3

您可能必須編寫自定義排序。看看ComparableComparator

東西線沿線的:

public class MyComparator implements Comparator<List<MyObject> { 
    int columnToSortOn; 
    public MyComparator(int columnToSortOn) { 
     this.columnToSortOn = columnToSortOn; 
    } 
    @Override 
    public int compare(List<MyObject> list1, List<MyObject> list2) { 
     return list1.get(columnToSortOn).compareTo(list2.get(columnToSortOn)); 
    } 
} 
+1

如果你想給出一個答案,你最好還應該給出一個簡短的代碼示例來說明如何做到這一點。簡單地指向Java文檔是不夠的。 (不是我認爲這個問題應該給予答案) – Dukeling

+0

因此,在正確的方向推動OP,而不是爲他們做所有的工作。 = 0p – indivisible

+0

好的,那麼。有一個基本的例子並沒有把所有東西都帶走。 – indivisible

相關問題