1
什麼是Java類定義泛型
class MyMap<K, V> implements Map<Comparable<K>, V>
類定義中的意義?我不明白怎麼MyMap<K, V>
可以是Map<Comparable<K>, V>
爲MyMap
需求K
和V
而Map
需求Comparable<K>
和V
什麼是Java類定義泛型
class MyMap<K, V> implements Map<Comparable<K>, V>
類定義中的意義?我不明白怎麼MyMap<K, V>
可以是Map<Comparable<K>, V>
爲MyMap
需求K
和V
而Map
需求Comparable<K>
和V
有效實現你過分析的聲明。 K
只是任何類型,MyMap
實現Map<Comparable<K>, V>
。
[...]不知道如何
MyMap<K, V>
可以是Map<Comparable<K>, V>
有效實施[...]
如果實現由Map<Comparable<K>, V>
所需的方法就可以了。特別MyMap
需要實現的方法有例如以下特徵:
public Set<Comparable<K>> keySet() {
...
}
注意上面的方法聲明提出沒有限制的K
。換句話說,類聲明不應與
class MyMap<K extends Comparable, V> implements Map<K, V>
這意味着K
必須Comparable
混淆。
這看起來很不錯。看到MyMap類的典型用法將會很有趣。作爲一個起點,考慮一下典型的Java成語: Map m = new HashMap (); 在上面,KeyType必須是可比較的。但是,使用MyMap,它不會。但是,您必須將其聲明爲: Map ,ValueType> m = new MyMap (); –
2015-03-13 13:19:27
不知道我關注。密鑰在HashMap中不必具有可比性。 – aioobe 2015-03-13 17:24:10