集合框架之Map
Map接口
Map是通过键值对(key-value)来存储元素。
Map容器接口中提供了增删改查的方式对集合进行操作。
Map的常用方法:
增:put / putAll
删:clear / remove
改:put
查:get / containskey / containsValue
其他:isEmpty / size
部分练习代码
1 public class MapDome { 2 public static void main(String[] args) { 3 Map<String, String> map=new HashMap<String,String>(); 4 5 //存储 6 map.put("1", "xiaoming"); 7 map.put("2", "wangzhu"); 8 map.put("3", "lisi"); 9 10 //获取 11 //String m=map.get("1"); 12 13 //删除 14 //map.remove("2"); 15 16 //System.out.println(m); 17 System.out.println(map); 18 19 20 21 } 22 }
Map的遍历:
方法1:keySet方法 获取键,再获取值。
1 public class MapDome { 2 public static void main(String[] args) { 3 Map<String, String> map=new HashMap<String,String>(); 4 5 //存储 6 map.put("1", "xiaoming"); 7 map.put("2", "wangzhu"); 8 map.put("3", "lisi"); 9 10 //获取 11 //String m=map.get("1"); 12 13 //删除 14 //map.remove("2"); 15 16 //System.out.println(m); 17 //System.out.println(map); 18 19 //keySet方法 20 Set<String> keys=map.keySet(); 21 for (String key : keys) { 22 System.out.println(key+"="+map.get(key)); 23 } 24 25 26 27 } 28 }
方法2:keySet+Iterator迭代器
1 public class MapDome { 2 public static void main(String[] args) { 3 Map<String, String> map=new HashMap<String,String>(); 4 5 //存储 6 map.put("1", "xiaoming"); 7 map.put("2", "wangzhu"); 8 map.put("3", "lisi"); 9 10 //获取 11 //String m=map.get("1"); 12 13 //删除 14 //map.remove("2"); 15 16 //System.out.println(m); 17 //System.out.println(map); 18 19 //keySet方法 20 Set<String> keys=map.keySet(); 21 /*for (String key : keys) { 22 System.out.println(key+"="+map.get(key)); 23 }*/ 24 25 Iterator<String> iterator=keys.iterator(); 26 while(iterator.hasNext()){ 27 String key= iterator.next(); 28 System.out.println(key+"="+map.get(key)); 29 } 30 31 32 33 } 34 }
方法3:entrySet方法
1 public class MapDome { 2 public static void main(String[] args) { 3 Map<String, String> map=new HashMap<String,String>(); 4 5 //存储 6 map.put("1", "xiaoming"); 7 map.put("2", "wangzhu"); 8 map.put("3", "lisi"); 9 10 //获取 11 //String m=map.get("1"); 12 13 //删除 14 //map.remove("2"); 15 16 //System.out.println(m); 17 //System.out.println(map); 18 19 Set<Entry<String,String>> set= map.entrySet(); 20 for (Entry<String, String> entry : set) { 21 System.out.println(entry.getKey()+"="+entry.getValue()); 22 } 23 24 Iterator<Entry<String,String>> iterator=set.iterator(); 25 while(iterator.hasNext()){ 26 Entry<String,String> entry=iterator.next(); 27 System.out.println(entry.getKey()+entry.getValue()); 28 } 29 30 31 } 32 }