Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/android/196.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 集合不能包含重复项。但确实如此_Java_Android - Fatal编程技术网

Java 集合不能包含重复项。但确实如此

Java 集合不能包含重复项。但确实如此,java,android,Java,Android,该集合不能包含重复项 但是,此代码可以正常工作: Set<String> vmv = new TreeSet<String>(); vmv.add("a"); vmv.add("a"); System.out.println(vmv.toString()); 我刚加了一个副本。有人能解释一下吗。从同一页往下看: add方法将指定的元素添加到集合中(如果该元素尚未存在),并返回一个布尔值,指示是否添加了该元素 …这正是它所做的。打印最终集时,您应该只看到重复元素的一个副本

该集合不能包含重复项

但是,此代码可以正常工作:

Set<String> vmv = new TreeSet<String>();
vmv.add("a");
vmv.add("a");
System.out.println(vmv.toString());

我刚加了一个副本。有人能解释一下吗。

从同一页往下看:

add方法将指定的元素添加到集合中(如果该元素尚未存在),并返回一个布尔值,指示是否添加了该元素


…这正是它所做的。打印最终集时,您应该只看到重复元素的一个副本。

从同一页,再往下:

add方法将指定的元素添加到集合中(如果该元素尚未存在),并返回一个布尔值,指示是否添加了该元素

…这正是它所做的。打印最终的集合时,您应该只看到重复元素的一个副本。

使用相同的值调用add两次不会再次添加它,请检查返回的布尔值,您将看到第二次它为false,或者检查集合的大小以验证在第二次之后它没有更改:

Set<String> vmv = new TreeSet<String>();

System.out.println(vmv.add("a")); // prints true
System.out.println(vmv.size());   // prints 1

System.out.println(vmv.add("a")); // prints false
System.out.println(vmv.size());   // prints 1
使用相同的值调用add两次不会再次添加,请检查返回的布尔值,您将看到第二次该值为false,或者检查集合的大小以验证在第二次之后该值没有更改:

Set<String> vmv = new TreeSet<String>();

System.out.println(vmv.add("a")); // prints true
System.out.println(vmv.size());   // prints 1

System.out.println(vmv.add("a")); // prints false
System.out.println(vmv.size());   // prints 1

请阅读Javadoc,特别是add方法的作用。如果您的意思是,集合中有第二个元素,那么vmv.toString将导致输出[a,a]。。。事实并非如此。对于您的代码,添加两次后,集合中只有一个a。请阅读Javadoc,特别是add方法的作用。如果您的意思是,集合中有第二个元素,那么vmv.toString将导致输出[a,a]。。。事实并非如此。对于您的代码,在添加两次后,集中只有一个a。如果我理解正确。。副本没有输入,只是返回了false?如果我理解正确的话。。副本从未被输入,只是返回false?