》為什么要使用Map集合?
不便利集合所有元素進行對象屬性值的判斷,就可以根據鍵取到對象,這是Collection集合辦不到的,Map可以輕易做到。
》Map集合的特點?
將鍵映射到值的對象。一個映射不能包含重復的鍵;每個鍵最多只能映射到一個值。
》Map集合和Collection集合的區別?
Map集合存儲元素是成對出現的,Map集合的鍵是唯一的,值是可重復的。可以把這個理解為:夫妻對
Collection集合存儲元素是單獨出現的,Collection的兒子Set是唯一的,List是可重復的。可以把這個理解為:光棍
》注意: Map集合的數據結構值針對鍵有效,跟值無關
Collection集合的數據結構是針對元素有效
》Map集合的功能概述:
1:添加功能 V put(K key,V value):添加元素。這個其實還有另一個功能
如果鍵是第一次存儲,就直接存儲元素,返回null 如果鍵不是第一次存在,就用值把以前的值替換掉,返回以前的值 2:刪除功能 void clear():移除所有的鍵值對元素 V remove(Object key):根據鍵刪除鍵值對元素,并把值返回 3:判斷功能 boolean containsKey(Object key):判斷集合是否包含指定的鍵 boolean containsValue(Object value):判斷集合是否包含指定的值 boolean isEmpty():判斷集合是否為空 4:獲取功能 Set<Map.Entry<K,V>> entrySet():得到鍵值對的集合 V get(Object key):根據鍵獲取值 Set<K> keySet():獲取集合中所有鍵的集合 Collection<V> values():獲取集合中所有值的集合 5:長度功能 int size():返回集合中的鍵值對的對數
》Map的遍歷方式
Map<key類型,value類型> map=new HashMap<key類型,value類型>();
>1.鍵到值
Set<key的類型> set=map.keySet();//得到所有key的集合 for(key的類型 key: set){ value類型 value=map.get(key); System.out.PRintln(key+"—"+value); }>2.鍵和值一起Set<Map.Entry<key類型,value類型>> set=map.entrySet(); for(Map.Entry<key類型,value類型> entry: set){ key類型=entry.getKey(); value類型=entry.getValue(); System.out.println(key+"—"+value); }
import java.util.HashMap;import java.util.Map;public class MapDemo { public static void main(String[] args) { // 創建集合對象 Map<String, String> map = new HashMap<String, String>(); // 添加元素 // V put(K key,V value):添加元素。這個其實還有另一個功能?先不告訴你,等會講 // System.out.println("put:" + map.put("文章", "馬伊俐")); // System.out.println("put:" + map.put("文章", "姚笛")); map.put("鄧超", "孫儷"); map.put("黃曉明", "楊穎"); map.put("周杰倫", "蔡依林"); map.put("劉愷威", "楊冪"); // void clear():移除所有的鍵值對元素 // map.clear(); // V remove(Object key):根據鍵刪除鍵值對元素,并把值返回 // System.out.println("remove:" + map.remove("黃曉明")); // System.out.println("remove:" + map.remove("黃曉波")); // boolean containsKey(Object key):判斷集合是否包含指定的鍵 // System.out.println("containsKey:" + map.containsKey("黃曉明")); // System.out.println("containsKey:" + map.containsKey("黃曉波")); // boolean isEmpty():判斷集合是否為空 // System.out.println("isEmpty:"+map.isEmpty()); //int size():返回集合中的鍵值對的對數 System.out.println("size:"+map.size()); // 輸出集合名稱 System.out.println("map:" + map); }}
新聞熱點
疑難解答