存储的对象唯一且无序。
package collection;
import java.util.HashSet;
import java.util.Iterator;
class Dog{
private String name;
private String sex;
public Dog() {
super();
}
public Dog(String name, String sex) {
super();
this.name = name;
this.sex = sex;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public String getSex() {
return sex;
}
public void setSex(String sex) {
this.sex = sex;
}
}
public class ArrayLi {
public static void main(String[] args) {
Dog dog1 = new Dog("tom","1");
Dog dog2 = new Dog("jerry","0");
Dog dog3 = new Dog("john","1");
Dog dog4 = new Dog("lucy","1");
HashSet set = new HashSet();
set.add(dog1);
set.add(dog2);
set.add(dog3);
set.add(dog4);
//set.add(dog4);不会添加进去,因为HashSet添加的对象唯一。
System.out.println("遍历方式1:");//迭代器
Iterator itr = set.iterator();
while (itr.hasNext()) {
//Object object = itr.next();
//System.out.println(object);//输出的是地址
Dog dogs = (Dog)itr.next();
System.out.println(dogs.getName());
}
System.out.println("遍历方式2:");//foreach
for (Object object : set) {
Dog dogs2 = (Dog)object;
System.out.println(dogs2.getName());
}
}
}