5

你好,我的代码是这样的:

TreeSet<String> ts=new TreeSet<String>();

ts.add("Testtxt");
ts.add("Testxml");
ts.add("docdoc");
ts.add("ePeoplexml");
ts.add("fantasyxlsx");
ts.add("idaddedgif");
ts.add("idaddedrtf");

System.out.println("Tree set :: "+ts);

输出:

Tree set :: [Testtxt, Testxml, docdoc, ePeoplexml, fantasyxlsx, idaddedgif, idaddedrtf]

它不是按字母顺序对所有字符串进行排序。任何人都可以帮助如何在treeset.

谢谢马杜。

4

1 回答 1

25

排序很好。它以区分大小写的方式完成。由于 unicode 代码点位于T之前d,因此,在排序集中位于Testtxt之前。docdoc

由于您想要进行不区分大小写的排序,您可以使用类中定义的预定义静态CASE_INSENSITIVE比较器String。像这样实例化你TreeSet

TreeSet<String> ts=new TreeSet<String>(String.CASE_INSENSITIVE_ORDER);
于 2013-08-20T10:53:23.347 回答