我知道输出是四一三二。谁能解释一下怎么样?由于有五个项目,但只打印了四个。
TreeSet map = new TreeSet();
map.add("one");
map.add("two");
map.add("three");
map.add("four");
map.add("one");
Iterator it = map.iterator();
while (it.hasNext() )
{
System.out.print( it.next() + " " );
}
答案 0 :(得分:6)
TreeSet不允许重复输入。 当它被访问时,它将以自然顺序(按字母顺序)返回元素。
参见: http://docs.oracle.com/javase/6/docs/api/java/util/TreeSet.html
答案 1 :(得分:1)
Set's不允许重复。再次添加重复内容,如“一个”,它没有被添加。
TreeSet map = new TreeSet();
System.out.println(map.add("one"));
map.add("two");
map.add("three");
map.add("four");
System.out.println(map.add("one"));
Iterator it = map.iterator();
while (it.hasNext() )
{
System.out.print( it.next() + " " );
}
<强>结果:强>
true
false
第二个元素未添加到集合中。
添加支票时if(e==null ? e2==null : e.equals(e2))
为真,那么只会将元素添加到Set
,否则不会。
答案 2 :(得分:0)
TreeSet是Set Interface的实现
并且Set始终只包含唯一元素
所以即使你已经放了5个元素,TreeSet实际上只包含4个,因为“one”是 重复两次。