import java.util.*;
public class TestHashSet
{
public static void main(String [] args)
{
Set<String> set = new HashSet<String>();
set.add("London");
set.add("Paris");
set.add("New York");
set.add("San Francisco");
set.add("Beijing");
set.add("New York");
System.out.println(set);
Iterator iterator = set.iterator();
while(iterator.hasNext())
{
System.out.println(iterator.next()+ " ");
}
}
}
System.out.println(set) 为什么这句输出[San Francisco, New York, Paris, Beijing, London]
直接用 set 作参数输出就可以把他的内容显示出来 都不用迭代 好像有点难理解
public class TestHashSet
{
public static void main(String [] args)
{
Set<String> set = new HashSet<String>();
set.add("London");
set.add("Paris");
set.add("New York");
set.add("San Francisco");
set.add("Beijing");
set.add("New York");
System.out.println(set);
Iterator iterator = set.iterator();
while(iterator.hasNext())
{
System.out.println(iterator.next()+ " ");
}
}
}
System.out.println(set) 为什么这句输出[San Francisco, New York, Paris, Beijing, London]
直接用 set 作参数输出就可以把他的内容显示出来 都不用迭代 好像有点难理解
public String toString() {
StringBuffer buf = new StringBuffer();
buf.append("["); Iterator<E> i = iterator();
boolean hasNext = i.hasNext();
while (hasNext) {
E o = i.next();
buf.append(o == this ? "(this Collection)" : String.valueOf(o));
hasNext = i.hasNext();
if (hasNext)
buf.append(", ");
} buf.append("]");
return buf.toString();
}
这个E是什么 意思啊 麻烦你解释一下给我听
好吗 谢谢啦
http://en.wikipedia.org/wiki/Generics_in_Java简单的理解就是:
如果你想往hashset里放string, 你就把那个E换成string, 如果你想放int, 就换int.
但是java支持自动拆箱,不是就可以 了吗?