Java Map.Entry接口
Map.Entry接口,可以用一個映射項工作。
由Map接口中聲明的entrySet()方法返回一個包含映射條目的集。每個組元素都是一個Map.Entry對象。
下表總結了該接口聲明的方法:
SN | 方法及描述 |
---|---|
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.*; public class HashMapDemo { public static void main(String args[]) { // Create a hash map HashMap hm = new HashMap(); // Put elements to the map hm.put("Zara", new Double(3434.34)); hm.put("Mahnaz", new Double(123.22)); hm.put("Ayan", new Double(1378.00)); hm.put("Daisy", new Double(99.22)); hm.put("Qadir", new Double(-19.08)); // Get a set of the entries Set set = hm.entrySet(); // Get an iterator Iterator i = set.iterator(); // Display elements while(i.hasNext()) { Map.Entry me = (Map.Entry)i.next(); System.out.print(me.getKey() + ": "); System.out.println(me.getValue()); } System.out.println(); // Deposit 1000 into Zara's account double balance = ((Double)hm.get("Zara")).doubleValue(); hm.put("Zara", new Double(balance + 1000)); System.out.println("Zara's new balance: " + hm.get("Zara")); } }
這將產生以下結果:
Daisy 99.22 Qadir: -19.08 Zara: 3434.34 Ayan: 1378.0 Mahnaz: 123.22 Zara's new balance: 4434.34