java例程练习(Iterator)

2014-11-24 07:51:15 · 作者: · 浏览: 0
import java.util.Collection;
import java.util.HashSet;
import java.util.Iterator;


public class Test {
public static void main(String[] args) {
Collection c = new HashSet();
c.add(new Name("f1", "l1"));
c.add(new Name("f2", "l2"));
c.add(new Name("f3", "l3"));

Iterator i = c.iterator();
while(i.hasNext()) {
Name n = (Name)i.next();
System.out.println(n.getFirstName() + " ");
}

Collection c1 = new HashSet();
c1.add(new Name("fff1", "lsss1"));
c1.add(new Name("g2", "l2"));
c1.add(new Name("fggf3", "lfgfg3"));

for(Iterator j = c1.iterator();j.hasNext();) {
Name name = (Name)j.next();
if(name.getFirstName().length() < 3) {
j.remove();
}
}

System.out.println(c);
System.out.println(c1);

}
}

class Name {
private String firstName;
private String lastName;

Name(String firstName, String lastName) {
this.setFirstName(firstName);
this.setLastName(lastName);
}

public void setFirstName(String firstName) {
this.firstName = firstName;
}

public String getFirstName() {
return firstName;
}

public void setLastName(String lastName) {
this.lastName = lastName;
}

public String getLastName() {
return lastName;
}

public String toString() {
return firstName + " " + lastName;
}

public boolean equals(Object obj) {
if(obj instanceof Name) {
Name name = (Name) obj;
return (firstName.equals(name.firstName)) &&
(lastName.equals(name.lastName));
}
return super.equals(obj);
}

public int hashCode() {
return firstName.hashCode();
}
}



摘自 Yours风之恋