2012-11-04 74 views
2

我有代碼:排序的ArrayList的

List<String> list = new ArrayList<String>(); 
    list.add("10.160.0.100;14/Nov/201107:22:38;/;-;"); 
    list.add("10.160.0.100;14/Nov/201108:54:31;/;-;"); 
    list.add("10.160.0.10;16/Nov/201112:56:38;/;-;"); 

    list.add("10.160.0.100"); 
    list.add("10.160.0.100"); 
    list.add("10.160.0.10"); 


    Collections.sort(list); 
    for (String temp : list) { 
     System.out.println(temp); 
    } 

輸出是:

10.160.0.10

10.160.0.100

10.160.0.100

10.160.0.100 ; 14 /月/ 201107:22:38; /; - ;

10.160.0.100; 14/Nov/201108:54:31; /; - ;

10.160.0.10; 16/Nov/201112:56:38; /; - ;

爲什麼?我需要這樣的輸出:

10.160.0.10

10.160.0.100

10.160.0.100

10.160.0.10; 16 /月/ 201112:56:38; /; - ;

10.160.0.100; 14/Nov/201107:22:38; /; - ;

10.160.0.100; 14/Nov/201108:54:31; /; - ;

+0

您所需的輸出不以任何方式排序。 –

回答

4

因爲在ASCII中,;字符的數字比0字符的數字更高。

enter image description here

+0

非常感謝你 – Majkl

+0

對不起,我正在修復它;) – Majkl