import
java.util.Collection;
import
java.util.HashSet;
import
java.util.Iterator;
public class Test {
public static void main(String[] args) {
Collection<Name> c = new HashSet<Name>();
c.add(new Name("f1", "l1"));
c.add(new Name("f2", "l2"));
c.add(new Name("f3", "l3"));
Iterator<Name> i = c.iterator();
while(i.hasNext()) {
Name n = (Name)i.next();
System.out.println(n.getFirstName() + " ");
}
Collection<Name> c1 = new HashSet<Name>();
c1.add(new Name("fff1", "lsss1"));
c1.add(new Name("g2", "l2"));
c1.add(new Name("fggf3", "lfgfg3"));
for(Iterator<Name> 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();
}
}