JAVA集合——Map介面
一.Map介面儲存的是 一組成對的鍵(key)和值(value)物件,提供key到value的對映,主要是通過key來進行檢索,因為key的要求是無序但是要唯一,而value也是無序,但是可以重複,所以就只能通過key來進行索引;
二.Map介面的常用方法:
1.新增資料,成對新增Object put (Object key,Object value),這裡的key和value的型別可以為任何型別!
//Map介面中的key不要求有序,但是不能重複,重複就會被覆蓋;
//但是Map中的value不要求有序,但是允許重複!
countey.put("CN","中國");
countey.put("AU","澳大利亞");
countey.put("JP","日本");
countey.put("USA","美國");
2.移除與指定key相關的對映
//刪除某個特定的key所對應的鍵值對
countey.remove("USA");
3.獲得與key相關的value值,如果沒有則返回null;這裡需要注意的是,因為Map基本上是通過key來遍歷或者查詢value的值,需要把Map中的所有key 放在一起,因為key的特性,所以可以使用前面的Set 來存放一個Map中的所有key:(即 Set keySet() 方法,獲取所有key的集合)
Set keys=country.ketSet();
//通過key,再結合Object get(Object key);獲得與key相對應的value值;
//基本上是採用for迴圈的形式來輸出key和value;
三.Map的遍歷有哪幾種:
分析:因為Map中的物件是無序的,所以不能使用一般的for迴圈來進行遍歷。因此可以使用增強型for或者前面提過的 Itrerator(迭代器來進行遍歷);都是通過get(key)獲取value;
注意:無論是增強型for還是Iterrator(迭代器);遍歷的都是Map物件的key值,所以第一步都是獲取所有的key;通過keyset()方法
增強for:
Set keys=countey.keySet();
所有的key放到Set中:
for (Object obj:keys )
{
String key=(String )obj;//Map中的每一個key;
String value=(String)countey.get(key);//Map中的每一個key對應的value;
System.out.println(key+"-----"+value);
}
迭代器:
Set keyss=countey.keySet();
//同上,獲取所有的key的集合;
Iterator iterator1= keyss.iterator();
while (iterator1.hasNext()){
String s= (String)iterator1.next();
String value=countey.get(s);
System.out.println(s+"----->"+value);
}
還有一種就是遍歷Key-value對來進行獲取;主要的方法是map.enteyset()獲取鍵值對,其型別是Map.Entry
再通過getKey()、getValue()獲取對應的陣列,同時要注意型別的轉換;
Set set1=countey.entrySet();
//entrySet()獲取Map中的鍵值對,因為是鍵值對,包含key和value,其型別為Map.Entry再常用增強for來遍歷鍵值對集合;
for (Object obj:set1
) {
Map.Entry m=(Map.Entry) obj;
String key=(String)m.getKey();
直接通過getkey和getvalue來獲取數值;
String value=(String)m.getValue();
System.out.println(key+"********"+value);
}
相關文章
- JAVA集合框架 - Map介面Java框架
- JAVA集合詳解(Collection和Map介面)Java
- Java集合類——MapJava
- Java集合系列之Collection與Map介面巨集觀把控Java
- Java Map集合練習Java
- java中的Map集合Java
- Java集合四:Map簡介;Java
- Java Collection、Map集合總結Java
- Java集合框架List,Map,Set等Java框架
- Java遍歷Map集合的方法Java
- Java中List集合轉Map集合報錯:Duplicate keyJava
- Map集合
- Map集合(Java基礎、skycto JEEditor)Java
- Java中的Map集合學習筆記Java筆記
- Java 基礎(七)集合原始碼解析 MapJava原始碼
- Java 中的泛型 集合(List,Set) MapJava泛型
- 集合框架-Map集合功能概述框架
- 「譯」Java集合框架系列教程二:集合介面Java框架
- Java Collection介面 ArrayList集合(容器)Java
- Java集合體系總結 Set、List、Map、QueueJava
- java 遍歷map 方法 集合 五種的方法Java
- 集合框架-Map集合的遍歷框架
- Map集合筆記筆記
- 【Java基礎】--Java容器剖析:Set、List、Map介面Java
- Java學習--list,set,Map介面使用Java
- Java學習--java中的集合框架、Collection介面、list介面Java框架
- Java集合中List,Set以及Map等集合體系詳解(史上最全)Java
- Java 集合排序策略介面 ComparatorJava排序
- Java 集合框架(一)—— 介面綜述Java框架
- Java容器 | 基於原始碼分析Map集合體系Java原始碼
- Java集合 Collection、Set、Map、泛型 簡要筆記Java泛型筆記
- Java集合類: Set、List、Map、Queue使用場景梳理Java
- Java執行緒安全的集合類:Map、List、SetJava執行緒
- Java集合原始碼學習(1)介面Java原始碼
- Java集合框架中的介面和類Java框架
- 深入淺出Java中Map介面的實現Java
- 【JavaSE】集合類Collection集合Map集合的簡單介紹,List介面,中三個常用子類ArrayList、Vector、LinkedList之間的比較。Set介面。Java
- java基礎學習之九:集合型別Set/List/MapJava型別