close
目標: 使用Collection.sort 來進行ArrayList (List) 的排序,需實作 Comparator。
以下為一個實際的例子,加入三個字串後,依照字串長度由長排到短。
public class test1 { private static void test() { ArrayList string = new ArrayList(); //加入三個字串 string.add("a"); string.add("bb"); string.add("ccc"); //將字串由長排到短, 第一個參數是擺要排序的物件,第二個參數則是實作 Comparator 的函數 java.util.Collections.sort(string, new compare()); } public static void main(String args[]) { test(); } }
上面程式碼所使用到的 compare 函數如下:
public class compare implements Comparator { public int compare(Object arg0, Object arg1) { String str1 = arg0.toString(); String str2 = arg1.toString(); if(str1.length()>str2.length()) { //回傳-1代表把元件向前排, 代表str1排在str2的前面 return -1; }else if(str1.length()<str2.length()) { //回傳1代表把元件向後排, 代表str1排在str2的後面 return 1; }else { return 0; } } }
文章標籤
全站熱搜
留言列表