本帖最后由 s526349668 于 2014-7-14 23:16 编辑
这个代码请问哪里错了,重复的数据没有去掉哦- import java.util.*;
- public class HashDemo {
- private String name;
- private int age;
- HashDemo(String name, int age){
- this.name=name;
- this.age=age;
- }
- public int hashCode(){
- return name.hashCode()+age*37;
- }
- public String getName() {
- return name;
- }
- public int getAge() {
- return age;
- }
-
- public boolean equals(Object obj){
- if(!(obj instanceof Person))
- return false;
- HashDemo p=(HashDemo)obj;
- return this.name.equals(p.name)&& this.age==p.age;
- }
- }
- public class HashDemoTest {
- public static void main(String[] args){
- HashSet hs=new HashSet();
- hs.add(new HashDemo("wangwu",14));
- hs.add(new HashDemo("zhangsan",22));
- hs.add(new HashDemo("lisi",30));
- hs.add(new HashDemo("zhangsan",22));
- Iterator it=hs.iterator();
- while(it.hasNext()){
- HashDemo h=(HashDemo)it.next();
- sop(h.getName()+"...."+h.getAge());
-
- }
-
- }
- public static void sop(Object obj){
- System.out.println(obj);
- }
- }
复制代码
|
|