# Java Equals方法完美实现

- URL: https://www.yidoo.xyz/java-equals-method
- 作者: 核动力蜗牛
- 发布时间: 2013-05-15
- 更新时间: 2013-05-15
- 分类: 技术笔记
- 标签: java

# Equals：

Object 类中的 equals 方法用于检测一个对象是否等于另一个对象。

# 实现：

```java
public class MyClass {

	private Integer field1;

	private String field2;

	@Override
	public boolean equals(Object otherObject) {

		// 判断是否引用同一个对象
		if (this == otherObject) {
			return true;
		}

		// 检测otherObject是否为空
		if (otherObject == null) {
			return false;
		}

		// 比较this和otherObject是不是属于同一个类
		if (!(otherObject instanceof MyClass)) {
			return false;
		}

		// 比较每个域是否相等
		MyClass other = (MyClass) otherObject;
		return this.field1.equals(other.field1)
				&& this.field2.equals(other.field2);
	}
}
```
