package cn.com.songjy.test;
public class Person
{
private String id;// 身份证号码相同则判定为同一个人
private String name;// 姓名
public String getId()
{
return id;
}
public void setId(String id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
@Override
public boolean equals(Object obj)
{
if (this == obj)// 如果两个对象为同一个对象
{
return true;
}
if (null != obj && obj.getClass() == Person.class)// 此处不可使用instanceof
{
Person p = (Person) obj;
//return this.id.equals(p.id);
return this.getId().equals(p.getId());
}
return false;
}
}
备注:hashCode方法一般也需重写,请根据业务自定
分享到:
相关推荐
equals方法比较两个字符串的内容是否相等;运算符“==”判断两个对象是否指向同一个引用,即是否为同一个对象。 2.重载和覆盖 方法的重载 是实现多态的一种方式 多个方法在同一个类中 多个方法具有相同方法名 多...
- **知识点**:`equals()` 方法用于比较对象的内容是否相等,默认情况下大多数类(如 `Object` 类)的 `equals()` 方法比较的是对象引用(即地址)。但在某些类如 `Date` 中,`equals()` 方法被重写以比较日期值本身...
校验的方式就是先取hashCode判断是否相等(找到对应的位置,该位置可能存在多个元素),然后再取equals方法比较(极大缩小比较范围,高效判断),最终判定该存储结构中是否有重复元素。hashCode主要用于提升查询效率...
- **解答**:在Java中,`equals()`方法用于比较两个对象的内容是否相等。默认情况下,`Object`类中的`equals()`方法比较的是对象的引用是否相同。`File`类重写了`equals()`方法,使其比较两个`File`对象所代表的...
- `equals`方法用于比较两个对象的内容是否相等。默认情况下,`equals`方法也实现了地址比较的功能,但许多类(如`String`)重写了`equals`方法来比较内容。 #### 12. 静态变量与实例变量的区别 - 静态变量属于类...
- 自定义对象作为key时,必须重写equals()和hashCode()方法,以确保对象比较逻辑的一致性,并且key对象应是不可变的,以防止后续修改导致的查找问题。 9. **线程启动与控制** - **启动线程**:使用`start()`,`...
11. "=="是比较操作数的内存地址,而equals方法用于比较两个对象的内容是否相等。 12. 静态变量属于类,实例变量属于对象。静态变量在类加载时就分配内存,而实例变量在对象实例化时分配内存。 13. static方法属于...
- `&&`也是逻辑运算符,但具有短路效果,即如果第一个操作数为`false`,则不会计算第二个操作数。 #### 4\. 跳出多重嵌套循环 在Java中,可以通过标记循环或使用`break`语句跳出特定的循环。如果希望跳出多重嵌套...
- `equals` 方法用于比较两个对象的内容是否相等,默认情况下它也是比较引用,但许多类(如 `String`)重写了此方法以比较实际内容。 4. **`Object` 类的公共方法**: - `toString()`:返回对象的字符串表示形式...