Java 7以降ではユーティリティクラスjava.util.Objects
が追加されており*1、ユーザ定義クラスのhashCode
メソッド実装に利用できるヘルパメソッドjava.util.Objects#hash(Object...)を提供する。
class X { private int m1; private String m2; private Object m3; // ... @Override public boolean equals(Object obj) { // (略) } @Override public int hashCode() { // フィールドを指定してhash値計算 return java.util.Objects.hash(m1, m2, m3); } }
関連URL