隨筆 - 55  文章 - 187  trackbacks - 0
          <2008年2月>
          272829303112
          3456789
          10111213141516
          17181920212223
          2425262728291
          2345678

          常用鏈接

          留言簿(12)

          隨筆分類

          隨筆檔案

          groovy

          搜索

          •  

          最新評論

          閱讀排行榜

          評論排行榜

          TreeSet類型是J2SE中唯一可實現(xiàn)自動排序的類型,用法如下:

          MyComparator.java
           1package test;
           2
           3import java.util.Comparator;
           4
           5public class MyComparator<T> implements Comparator<T> {
           6
           7    public int compare(T arg0, T arg1) {
           8        if (arg0.equals(arg1)) {
           9            return 0;
          10        }

          11        return ((Comparable<T>) arg0).compareTo(arg1) * -1;
          12    }

          13
          14}

          TreeSetTest.java
           1package test;
           2
           3import java.util.Iterator;
           4import java.util.TreeSet;
           5
           6public class TreeSetTest {
           7
           8    /**
           9     * @param args
          10     */

          11    public static void main(String[] args) {
          12
          13        MyComparator<String> myComparator = new MyComparator<String>();
          14
          15        // /////////////////////不添加自定義排序
          16        TreeSet<String> treeSet1 = new TreeSet<String>();
          17        treeSet1.add("c");
          18        treeSet1.add("a");
          19        treeSet1.add("b");
          20
          21        Iterator<String> iterator1 = treeSet1.iterator();
          22        while (iterator1.hasNext()) {
          23            System.out.println(iterator1.next());
          24        }

          25
          26        // /////////////////////添加自定義排序
          27        TreeSet<String> treeSet2 = new TreeSet<String>(myComparator);
          28        treeSet2.add("c");
          29        treeSet2.add("a");
          30        treeSet2.add("b");
          31
          32        Iterator<String> iterator2 = treeSet2.iterator();
          33        while (iterator2.hasNext()) {
          34            System.out.println(iterator2.next());
          35        }

          36    }

          37
          38}

          39

          運行結果:
          a
          b
          c
          c
          b
          a

          --------------------

              WE準高手
          posted on 2008-02-27 13:34 大衛(wèi) 閱讀(8430) 評論(3)  編輯  收藏 所屬分類: Java

          FeedBack:
          # re: 使用TreeSet構造排序的集合 2008-03-02 14:38 xifu
          VV不錯,多了一條路子  回復  更多評論
            
          # re: 使用TreeSet構造排序的集合[未登錄] 2009-01-04 00:05 sa
          TreeSet類型是J2SE中唯一可實現(xiàn)自動排序的類型

          不要亂說
          treeset 實現(xiàn)了 sortedSet接口 所以他才能排序
          如果你不自己定義comparator就按系統(tǒng)默認的方式排序
          類似的還有 treeMap

            回復  更多評論
            
          # re: 使用TreeSet構造排序的集合 2009-05-09 16:35 asdfljasf
          不錯
            回復  更多評論
            
          主站蜘蛛池模板: 吉隆县| 突泉县| 枣庄市| 定南县| 泰宁县| 商水县| 西吉县| 鄯善县| 海晏县| 改则县| 宁陕县| 武平县| 东港市| 安顺市| 内黄县| 佳木斯市| 伊金霍洛旗| 宿州市| 平山县| 宜阳县| 扎鲁特旗| 麻栗坡县| 景德镇市| 措勤县| 嘉定区| 新泰市| 侯马市| 长丰县| 黑水县| 延边| 葫芦岛市| 休宁县| 铜鼓县| 莱州市| 绩溪县| 绥滨县| 宁波市| 新巴尔虎左旗| 通州市| 故城县| 册亨县|