我有一個數組列表如下一些規則排序文本
100 AAA 500-1 Lorem Ipsum
100 BBB 500-2 Lorem Ipsum
101 AAA 500-1 Lorem Ipsum
101 AAA 500-2 Lorem Ipsum
100 BBB 500-3 Lorem Ipsum
我想這是歸類爲
101 AAA 500-1 Lorem Ipsum
101 AAA 500-2 Lorem Ipsum
100 AAA 500-1 Lorem Ipsum
100 BBB 500-2 Lorem Ipsum
100 BBB 500-3 Lorem Ipsum
首先,通過數(101,100)下降。
二,由三個字母單詞(AAA,BBB)升序。
第三,由升序第三列(500-1,500-2,500-3)
我可以通過空間分割的每個元素,並獲得單詞和排序。但任何人都可以請幫助我以任何其他方式或已知的算法? 如果您需要更多信息,請讓我知道。
預先感謝您。
我不是Java開發人員,但必須有在你的對象一些「排序」功能,它可以或許覆蓋排序取決於多個條件...... – 2013-05-03 12:28:09
有沒有具體的算法爲「本」。任何分類最終都會歸結爲快速排序,泡泡或其他常用的頂級算法之一。它們都依賴於特定的「比較器」功能,儘管它負責指示兩個給定值之間的差異。你所需要做的就是覆蓋它。 – 2013-05-03 12:30:31
你可以爲每一行創建一個對象並使其實現Comparable,並在'compareTo'方法中定義排序(或者像Dworza建議的那樣使用比較器) – 2013-05-03 12:34:44