1700452630
每个类都有equals、hashCode、toString方法,如果我们自己编写的类需要覆写这些方法,就需要考虑很多的因素了,特别是equals方法,可以参考第3章有关equals的建议,如果我们使用lang包就会简单得多,示例代码如下:
1700452631
1700452632
class Person{
1700452633
1700452634
private String name;
1700452635
1700452636
private int age;
1700452637
1700452638
/*getter/setter省略*/
1700452639
1700452640
//自定义输出格式
1700452641
1700452642
public String toString(){
1700452643
1700452644
return new ToStringBuilder(this)
1700452645
1700452646
.append(“姓名”,name)
1700452647
1700452648
.append(“年龄”,age)
1700452649
1700452650
.toString();
1700452651
1700452652
}
1700452653
1700452654
public boolean equals(Object obj){
1700452655
1700452656
if(obj==null){
1700452657
1700452658
return false;
1700452659
1700452660
}
1700452661
1700452662
if(obj==this){
1700452663
1700452664
return true;
1700452665
1700452666
}
1700452667
1700452668
if(obj.getClass()!=getClass()){
1700452669
1700452670
return false;
1700452671
1700452672
}
1700452673
1700452674
Person p=(Person)obj;
1700452675
1700452676
//只要姓名相同,就认为两个对象相等
1700452677
1700452678
return new EqualsBuilder()
1700452679
[
上一页 ]
[ :1.70045263e+09 ]
[
下一页 ]