利用HashSet去重

 1  package com.test;
 2 
 3  public  class Person {
 4 
 5      private String id;
 6      private String name;
 7 
 8      public String getId() {
 9          return id;
10     }
11 
12      public  void setId(String id) {
13          this.id = id;
14     }
15 
16      public String getName() {
17          return name;
18     }
19 
20      public  void setName(String name) {
21          this.name = name;
22     }
23 
24     @Override
25      public  int hashCode() {
26          int result;
27         result = (name ==  null ? 0 : name.hashCode());
28         result = 37 * result + (id ==  null ? 0 : id.hashCode());
29          return result;
30     }
31 
32     @Override
33      public  boolean equals(Object obj) {
34          if ( this == obj) {
35              return  true;
36         }
37          if (!(obj  instanceof Person)) {
38              return  false;
39         }
40          final Person other = (Person) obj;
41          if ( this.id.equals(other.getId()) &&  this.name.equals(other.getName())) {
42              return  true;
43         }  else {
44              return  false;
45         }
46     }
47 
48 }

 

 

 

 

 1  package com.test;
 2 
 3  import java.util.HashSet;
 4  import java.util.Iterator;
 5 
 6  public  class HashSetTest {
 7      public  static  void main(String[] args){
 8         Person person1 =  new Person();
 9         Person person2 =  new Person();
10         Person person3 =  new Person();
11         
12         person1.setId("1");
13         person1.setName("test1");
14         person2.setId("1");
15         person2.setName("test1");
16         person3.setId("2");
17         person3.setName("test1");
18         
19         HashSet set =  new HashSet();
20         set.add(person1);
21         set.add(person2);
22         set.add(person3);
23         
24         System.out.println(set.size());
25         
26         Iterator iter = set.iterator();
27          while(iter.hasNext()){
28             Person temp = (Person)iter.next();
29             System.out.println(temp.getId() + ":" + temp.getName());
30         }
31         
32         
33     }
34 }

 

 

 

 

转载于:https://www.cnblogs.com/cjunj/archive/2012/11/05/2755714.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值