判断两个对象是不是相等

public class Text1

{

public static void main(String[] args)

{

Set<Text2> t = new HashSet<Text2>();

t.add(new Text2("诸葛亮",27));

t.add(new Text2("庞统",40));

t.add(new Text2("诸葛亮",27));

//如果方法重写成功了,只打印出庞统和诸葛亮的对象,重复的不会打印

System.out.println(t);

}

 

}

 

class Text2

{

private String name;

private int age;

Text2(String name,int age)

{

this.name = name;

this.age = age;

}

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public int getAge() {

return age;

}

public void setAge(int age) {

this.age = age;

}

@Override

public String toString() {

return "Text2 [age=" + age + ", name=" + name + "]";

}

//重写equals方法

public boolean equals(Object obj)

{

//判断传进来的是不是Text2的实例

if(!(obj instanceof Text2))

{

return false;

}

//把传递过来的对象转换成子类

Text2 text = (Text2)obj;

//如果两个Text2类的所有属性都相等,认为是相同的对象

if(this.name !=null&&text.name!=null&&

this.name.equals(text.name)&&this.age==text.age)

return true;

else

return false;

}

//必须要重写hashCode方法

public int hashCode()

{

return 1;

}

}

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值