码迷,mamicode.com
首页 > 其他好文 > 详细

重写equals方法

时间:2015-07-31 12:40:40      阅读:125      评论:0      收藏:0      [点我收藏+]

标签:

Phone 类属性:

1     private String Id;
2     private String name;

 

重写后的equals方法:

 1 // 重写equals方法
 2     @Override
 3     public boolean equals(Object obj) {
 4         // 判断是否为同一个对象
 5         if (this == obj) {
 6             return true;
 7         }
 8         // 判断obj是否为Phone的一个实例
 9         if (!(obj instanceof Phone)) {
10             return false;
11         }
12         // 强制转换
13         Phone phone = (Phone) obj;
14         // 依次判断各个属性是否相等
15         if (!getId().equals(phone.getId())) {
16             return false;
17         }
18         if (!getName().equals(phone.getName())) {
19             return false;
20         }
21         return true;
22     }

 

测试:

1         Phone phone = new Phone("1234", "iph");
2         Phone phone2=new Phone("1234","iph");
3         System.out.println(phone.equals(phone2));

 

输出结果:

true

 

 

全部类代码:

 1 public class Phone {
 2     private String Id;
 3     private String name;
 4 
 5     public Phone() {
 6     }
 7 
 8     public Phone(String Id, String name) {
 9         this.Id = Id;
10         this.name = name;
11     }
12 
13     public String getId() {
14         return Id;
15     }
16 
17     public void setId(String id) {
18         Id = id;
19     }
20 
21     public String getName() {
22         return name;
23     }
24 
25     public void setName(String name) {
26         this.name = name;
27     }
28 
29     // 重写equals方法
30     @Override
31     public boolean equals(Object obj) {
32         // 判断是否为同一个对象
33         if (this == obj) {
34             return true;
35         }
36         // 判断obj是否为Phone的一个实例
37         if (!(obj instanceof Phone)) {
38             return false;
39         }
40         // 强制转换
41         Phone phone = (Phone) obj;
42         // 依次判断各个属性是否相等
43         if (!getId().equals(phone.getId())) {
44             return false;
45         }
46         if (!getName().equals(phone.getName())) {
47             return false;
48         }
49         return true;
50     }
51 }

 

重写equals方法

标签:

原文地址:http://www.cnblogs.com/mada0/p/4691778.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!