AbstractMap.SimpleEntry
java.lang.Object
|—java.util.AbstractMap.SimpleEntry<K,V&
public static class AbstractMap.SimpleEntry<K,V>
extends Object
implements Map.Entry<K,V>, Serializable
维护键和值的条目。 可以使用 setValue 方法更改该值。 此类有助于构建自定义地图实现的过程。 例如,在 Map.entrySet().toArray 方法中返回 SimpleEntry 实例的数组可能很方便。
构造函数摘要
构造函数 | 描述 |
---|---|
SimpleEntry(Map.Entry<? extends K,? extends V> entry) | 创建一个表示与指定条目相同的映射的条目。 |
SimpleEntry(K key, V value) | 创建一个表示从指定键到指定值的映射的条目。 |
方法总结
修饰符和类型 | 方法 | 描述 |
---|---|---|
boolean | equals(Object o) | 比较指定对象与此条目是否相等。 |
K | getKey() | 返回与该条目对应的键。 |
V | getValue() | 返回与该条目对应的值。 |
int | hashCode() | 返回此映射条目的哈希码值。 |
V | setValue(V value) | 将与此条目对应的值替换为指定的值。 |
String | toString() | 返回此映射条目的字符串表示形式。 |
从接口 java.util.Map.Entry 继承的方法 |
---|
comparingByKey, comparingByKey, comparingByValue, comparingByValue |
从类 java.lang.Object 继承的方法 |
---|
clone, finalize, getClass, notify, notifyAll, wait, wait, wait |
构造函数详细信息
SimpleEntry
public SimpleEntry(K key, V value)
创建一个表示从指定键到指定值的映射的条目。
参数:
参数名称 | 参数描述 |
---|---|
key | 此条目表示的键 |
value | 此条目表示的值 |
SimpleEntry
public SimpleEntry(Map.Entry<? extends K,? extends V> entry)
创建一个表示与指定条目相同的映射的条目。
参数:
参数名称 | 参数描述 |
---|---|
entry | 要复制的条目 |
方法详情
getKey
public K getKey()
返回与该条目对应的键。
指定者:
接口 Map.EntryK,V 中的 getKey
返回:
此条目对应的键
getValue
public V getValue()
返回与该条目对应的值。
指定者:
接口 Map.EntryK,V 中的 getValue
返回:
此条目对应的值
setValue
public V setValue(V value)
将与此条目对应的值替换为指定的值。
指定者:
接口 Map.EntryK,V 中的 setValue
参数:
参数名称 | 参数描述 |
---|---|
value | 要存储在此条目中的新值 |
返回:
对应条目的旧值
equals
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 接口的不同实现中正常工作。
指定者:
接口 Map.EntryK,V 中的等于
覆盖:
类 Object 中的等于
参数:
参数名称 | 参数描述 |
---|---|
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 的一般合同所要求的。
指定者:
接口 Map.EntryK,V 中的 hashCode
覆盖:
类 Object 中的 hashCode
返回:
此映射条目的哈希码值
toString
public String toString()
返回此映射条目的字符串表示形式。 此实现返回此条目的键的字符串表示形式,后跟等号字符 (“=”),后跟此条目的值的字符串表示形式。
覆盖:
类 Object 中的 toString
返回:
此映射条目的字符串表示形式