Treeset在字符串上排序未执行

时间:2014-01-28 06:12:26

标签: collections treeset

这可能看起来很愚蠢,与

有点相关

Alphabetical sorting in treeset not working

我有一个包含

的Treeset
TreeSet<String> ts=new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);

        ts.add("D1");
        ts.add("D9");
        ts.add("D5");
        ts.add("D3");
        ts.add("D8");

给了我,

Tree set :: [D1, D3, D5, D8, D9]

但如果我在我的“D”中加两位数

    ts.add("D1");
    ts.add("D9");
    ts.add("D5");
    ts.add("D3");
    ts.add("D8");
    ts.add("D11");
    ts.add("D18");
    ts.add("D17");
    ts.add("D13");

我明白了,

Tree set :: [D1, D11, D13, D17, D18, D3, D5, D8, D9]

哪个正确....请帮忙!

1 个答案:

答案 0 :(得分:0)

按字母顺序执行排序 - 所有1(1)都在3之前,然后是5,8,9。

如果你想进行数字排序,你需要实现自己的比较器。