实现 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");
}