Find centralized, trusted content and collaborate around the technologies you use most.
Teams
Q&A for work
Connect and share knowledge within a single location that is structured and easy to search.
putメソッドがジェネリックで定義されているのに対しget、オブジェクトで定義されている理由はありgetますget(K key)か?
put
get
get(K key)
put(K key, V value)
と
get(Object key)
ジェネリック型は、コレクションの内容の一貫性を保つためにコレクションに存在します。つまり、ある場合、Map<String, String>何らかの方法でその中に整数を取得したくありません。
Map<String, String>
get メソッドはこの問題を引き起こしません。get は、必ずしも同じクラスである必要のないキーに対して等値一致を使用します。したがって、一貫性の問題のために汎用にする必要はなく、キーに対する等価一致に関しては望ましくありません。