Map.Entry接口定义了如何使用映射条目。
Map接口声明的entrySet()方法返回包含映射条目的Set。这些set元素中的每一个都是Map.Entry对象。
下表是此接口声明的方法 -
编号
方法
描述
1
boolean equals(Object obj)
如果obj是一个Map.Entry,其键和值等于调用对象的值,则返回true。
2
Object getKey()
返回此映射条目的键。
3
Object getValue()
返回此映射条目的值。
4
int hashCode()
返回此映射条目的哈希码。
5
Object setValue(Object v)
将此映射条目的值设置为v。如果v不是映射的正确类型,则抛出ClassCastException。如果v为null并且映射不允许空键,则抛出NullPointerException异常。如果无法更改映射,则抛出UnsupportedOperationException异常。
示例
以下是一个演示如何使用Map.Entry接口的示例 -
import java.util.*;
/* 文件 : HashMapDemo.java */
public class HashMapDemo {
public static void main(String args[]) {
// 创建一个 HashMap
HashMap hm = new HashMap();
// Put elements to the map
hm.put("Maxsu", new Double(134.13));
hm.put("Yiibai", new Double(123.34));
hm.put("Kaops", new Double(478.10));
hm.put("Java", new Double(299.02));
hm.put("PHP", new Double(-117.88));
// 获取集合项
Set set = hm.entrySet();
// 获取集合迭代器
Iterator i = set.iterator();
// 显示所有元素
while (i.hasNext()) {
Map.Entry me = (Map.Entry) i.next();
System.out.print(me.getKey() + ": ");
System.out.println(me.getValue());
}
System.out.println();
// 添加指定用户的积分
double balance = ((Double) hm.get("Maxsu")).doubleValue();
hm.put("Maxsu", new Double(balance + 1000));
System.out.println("Maxsu最新积分: " + hm.get("Maxsu"));
}
}
执行上面示例代码,得到以下结果 -
Java: 299.02
Kaops: 478.1
Yiibai: 123.34
PHP: -117.88
Maxsu: 134.13
Maxsu最新积分: 1134.13
¥ 我要打赏
纠错/补充
收藏
加QQ群啦,易百教程官方技术学习群
注意:建议每个人选自己的技术方向加群,同一个QQ最多限加 3 个群。