实现 hashCode() 方法
要轻松实现对象的 hashCode
方法,可以使用 HashCodeBuilder
类。
选择字段:
@Override
public int hashCode() {
HashCodeBuilder builder = new HashCodeBuilder();
builder.append(field1);
builder.append(field2);
builder.append(field3);
return builder.hashCode();
}
使用反射:
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this, false);
}
boolean 参数指示是否应使用瞬态字段。
使用反射避免某些字段:
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this, "field1", "field2");
}