每个人都有身份证号和姓名等属性,如果身份证号相等, 则一定是同一个人。 (1)请重写equals方法判断两个对象是否相等; (2)请重写toString方法,返回的字符串的格式为:身份证号:# 姓名:**.
时间: 2024-10-29 14:19:18 浏览: 22
在Java中,如果你有一个表示人的类,比如Person,并且身份证号(id)和姓名(name)是该类的重要属性,你可以按照以下方式重写equals()和toString()方法:
```java
public class Person {
private String id;
private String name;
// 构造函数、getters和setters省略
// 重写equals()方法,用于比较两个Person对象的id是否相同
@Override
public boolean equals(Object obj) {
if (obj == null || getClass() != obj.getClass()) {
return false;
}
Person other = (Person) obj;
return this.id.equals(other.id);
}
// 重写toString()方法,返回包含id和name信息的字符串
@Override
public String toString() {
return "身份证号:" + id + "\n姓名:" + name.substring(0, 2) + "...";
}
}
```
在这个例子中,`equals()`方法只检查两个人的身份证号是否相等,因为身份证号被认为是唯一标识个体的关键特征。而`toString()`方法返回的信息隐藏了部分名字,仅显示前两个字符加上省略号,以保护隐私。
阅读全文