equal()メソッドとhashCode()メソッド
03 25, 2009 | Posted in メソッド | Thema ビジネス » 資格・スキルアップ・仕事
4 Comments
equal()メソッドとhashCode()メソッドの関係はわかりにくいです。
x.equal(y) == true のとき、x.hashCode() == y.hashCode()は必ず成り立つ必要があります。
x.hashCode() == y.hashCode() のとき、x.equal(y) == trueは成り立たなくてもかまいません。
x.hashCode() != y.hashCode() のとき、x.equal(y) == falseは必ず成り立つ必要があります。
x.equal(y) == false のときは、特にhashCode()メソッドに要件はありません。
x.equal(y) == true のとき、x.hashCode() == y.hashCode()は必ず成り立つ必要があります。
x.hashCode() == y.hashCode() のとき、x.equal(y) == trueは成り立たなくてもかまいません。
x.hashCode() != y.hashCode() のとき、x.equal(y) == falseは必ず成り立つ必要があります。
x.equal(y) == false のときは、特にhashCode()メソッドに要件はありません。
スポンサーサイト