Java实现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);
}布尔参数指示是否应使用瞬态字段。
使用反射避免某些字段:
@Override
public int hashCode() {
return HashCodeBuilder.reflectionHashCode(this, "field1", "field2");
}