1

Kathy Sierra SCJP 6.0 ブック (Chaper 7: Generics and Collections、Pg.583、Using Maps) に従って、キーとして使用したいオブジェクトのクラスの equals() メソッドと hashcode() メソッドをオーバーライドする必要があります。そのキーの値を見つけることができません。

しかし、私のコードによれば、値を取得できます。なんで?

import java.util.*;

class City {
    String name;

    City(String name) {
        this.name = name;
    }
}

public class MyClass {

    public static void main(String[] args) {

        Map<Object, Object> map = new HashMap<Object, Object>();
        City c1 = new City("NewYork");
        map.put(c1, "Fashion Capital");
        System.out.println(map.get(c1));
    }

}

//出力は「ファッションキャピタル」

4

0 に答える 0