默认设置是否排序?

    Set s = new HashSet();

s.add(1);

s.add(5);

s.add(4);

s.add(9);

s.add(7);

s.add(8);

s.add("b");

s.add("a");

s.add("B");

s.add("A");

s.add("s");

s.add("x");

s.add("d");

System.out.println(s);

s.remove("b");

s.remove("d");

System.out.println(s);

输出:

[1, d, 4, b, 5, A, B, 7, a, 8, 9, s, x]

[1, 4, 5, A, B, 7, a, 8, 9, s, x]

[1, 4, 5, A, B, 7, a, 8, 9, s, x]

当我们添加时,需要一些信息来设置默认排序" title="默认排序">默认排序整数值,但是如果我将字符串添加到设置,则默认情况下不会排序。

并且Caps字母将在运行多次后始终进行排序。

java版本“ 1.6.0_26” Java™SE运行时环境(内部版本1.6.0_26-b03)Java

HotSpot™客户端VM(内部版本20.1-b02,混合模式,共享)

请给我一些想法。谢谢

回答:

HashSet不保证其内容将以任何方式排序。确实有这样的保证的集合有一个特殊的接口:它被称为SortedSet

Set进一步提供关于它的元素的总体排序。使用元素的自然顺序或Comparator

在排序集创建时通常提供的元素对元素进行排序。集合的迭代器将以升序顺序遍历集合。提供了一些附加操作以利用订购的优势。(此接口是的设置类似物SortedMap。)

在Java

6中,有两个类实现了此接口:ConcurrentSkipListSetTreeSet

以上是 默认设置是否排序? 的全部内容, 来源链接: utcz.com/qa/415984.html

回到顶部