java.lang.Object java.util.AbstractMap.SimpleImmutableEntry<K,V>
public static class AbstractMap.SimpleImmutableEntry<K,V>
维护不可变的键和值的 Entry。此类不支持 setValue 方法。在返回线程安全的键-值映射关系快照的方法中,此类也许很方便。
构造方法摘要 | |
---|---|
AbstractMap.SimpleImmutableEntry(K key, V value) 创建一个项,它表示从指定键到指定值的映射关系。 |
|
AbstractMap.SimpleImmutableEntry(Map.Entry<? extends K,? extends V> entry) 创建一个项,它表示的映射关系与指定项相同。 |
方法摘要 | |
---|---|
boolean |
equals(Object o) 比较指定对象与此项的相等性。 |
K |
getKey() 返回对应于此项的键。 |
V |
getValue() 返回对应于此项的值。 |
int |
hashCode() 返回此映射项的哈希码值。 |
V |
setValue(V value) 用指定值替换对应于此项的值(可选操作)。 |
String |
toString() 返回此映射项的 String 表示形式。 |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造方法详细信息 |
---|
public AbstractMap.SimpleImmutableEntry(K key, V value)
key
- 此项所表示的键
value
- 此项所表示的值
public AbstractMap.SimpleImmutableEntry(Map.Entry<? extends K,? extends V> entry)
entry
- 要复制的项
方法详细信息 |
---|
public K getKey()
public V getValue()
public V setValue(V value)
value
- 要在此项中存储的新值
UnsupportedOperationException
- 始终抛出
public boolean equals(Object o)
true
。 更确切地讲,如果满足以下条件,则两个项
e1
和
e2
表示的映射关系相同:
(e1.getKey()==null ? e2.getKey()==null : e1.getKey().equals(e2.getKey())) && (e1.getValue()==null ? e2.getValue()==null : e1.getValue().equals(e2.getValue()))这确保
equals
方法可在
Map.Entry
接口的不同实现之间正常工作。
o
- 将与此映射项进行相等性比较的对象
true
hashCode()
public int hashCode()
e
的哈希码值定义如下:
(e.getKey()==null ?0 : e.getKey().hashCode()) ^ (e.getValue()==null ?0 : e.getValue().hashCode())这确保
e1.equals(e2)
意味着对于任意两个项
e1
和
e2
而言,都存在
e1.hashCode()==e2.hashCode()
,正如
Object.hashCode()
常规协定所要求的那样。
equals(java.lang.Object)
public String toString()