Map獲取鍵值
Map以按鍵/數值對的形式存儲數據,和數組非常相似,在數組中存在的索引,它們本身也是對象。
Map的接口
Map---實現Map
Map.Entry--Map的內部類,描述Map中的按鍵/數值對。
SortedMap---擴展Map,使按鍵保持升序排列
關於怎麼使用,一般是選擇Map的子類,而不直接用Map類。
下面以HashMap爲例。
public static void main(String args[]) {
HashMap hashmap =new HashMap();
hashmap.put("Item0", "Value0");
hashmap.put("Item1", "Value1");
hashmap.put("Item2", "Value2");
hashmap.put("Item3", "Value3");
Set set=hashmap.entrySet();
Iterator iterator=set.iterator();
while (iterator.hasNext() {
Map.Entry mapentry = (Map.Entry) iterator.next();
System.out.println(mapentry.getkey()+"/"+ mapentry.getValue());
}
}
注意,這裏Map的按鍵必須是唯一的,比如說不能有兩個按鍵都爲null。
如果用過它,就會知道它的用處了。
或者:
Java代碼
Set keys = map.keySet( );
if(keys != null) {
Iterator iterator = keys.iterator( );
while(iterator.hasNext( )) {
Object key = iterator.next( );
Object value = map.get(key);
}
}
資料:
java.util 中的集合類包含 Java 中某些最常用的類。 最常用的集合類是 List 和 Map。 List 的具體實現包括 ArrayList 和 Vector,它們是可變大小的列表,比較適合構建、存儲和操作任何類型對象的元素列表。 List 適用於按數值索引訪問元素的情形。
Map 提供了一個更通用的元素存儲方法。 Map 集合類用於存儲元素對(稱作“鍵”和“值”),其中每個鍵映射到一個值。 從概念上而言,您可以將 List 看作是具有數值鍵的 Map。 而實際上,除了 List 和 Map 都在定義 java.util 中外,兩者並沒有直接的聯繫。本文將着重介紹核心 Java 發行套件中附帶的 Map,同時還將介紹如何採用或實現更適用於您應用程序特定數據的專用 Map。
Map類提供了一個稱爲entrySet()的方法,這個方法返回一個Map.Entry實例化後的對象集。接着,Map.Entry類提供了一個getKey()方法和一個getValue()方法,因此,上面的代碼可以被組織得更符合邏輯。舉例如下:
儘管增加了一行代碼,我們卻省略了許多對Map不必要的“get”調用。同時,提供給開發人員一個同時保持了關鍵字和其對應的值的類。Map.Entry同時也提供了一個setValue()方法,程序員可以使用它修改map裏面的值。
Java代碼
private void a(){
Map values = new HashMap();
for (Map.Entry entry : values.entrySet()) {
Object key = entry.getKey( );