/*Map提供key到value的映射,一个Map中不能有相同的key,并且每个key只能映射一个value。 HashTable:底层数据结构为哈希表,不能存入null对象或者null值,线程是同步的,效率低 HashMap:底层数据结构为哈希表,可以存如null对象或者null值,线程是非同步的,效率高 TreeMap:底层数据结构为二叉树,线程不同步。*/ package test; import java.util.HashMap; import java.util.Iterator; import java.util.Map; import java.util.Set; public class MapDemo { public static void main(String[] args) { // TODO 自动生成的方法存根 Map <String,String> map = new HashMap<String,String>(); //在Map中添加元素,使用put方法,该方法返回当前键对应的值 map.put("01", "zhangsan"); map.put("02", "lisi"); map.put("03", "wangwu"); map.put("04", "wangliu"); System.out.println(map); //当试图在map容器中再次添加重复键的元素时,为了确保键值对应,新值会覆盖该键当前的值。 //put方法返回该建的旧值。 System.out.println("01键旧值为:" + map.put("01","zhanger")); System.out.println(map); //Map内元素的删除 map.remove("01"); System.out.println(map); //Map内元素的判断,使用containsKey或者containsValue判断键或值,使用isEmpty判断Map是否包含映射关系。 //Map内元素的迭代 Set<String> keys = map.keySet(); Iterator<String> it = keys.iterator(); while(it.hasNext()){ String key = it.next(); String value = map.get(key); System.out.println("键为:" + key + " " + "值为:" + value); } } }