Map(映射)是一种把键对象和值对象进行映射的集合。它的每一个元素都包含一对键对象和值对象,而值对象仍可以是Map类型,依次类推,这样就形成了多级映射。向map集合中加入元素时,必须提供一对键对象和值对象,从Map集合中检索元素时,只要给出键对象,就会返回对应的值对象。以下通过Map的put(Object key,Object value)方法向集合中插入元素,通过Map 的get(Object key)方法来检索与键对象对应的值对象。
Map<String ,String> map = new HashMap<String,String>();
Map.put(“1”,”sdfsdf”);
Map.put(“2“,”sdf”);
….
String day = map.get(“2”);
Map集合中的键不允许重复。
Map<String ,String> map = new HashMap<String,String>();
Map.put(“1”,”sdfsdf”);
Map.put(“2“,”sdf”);
….
Iterator<Map.Entry<String,String>> it = new map.entrySet().iterator();
While(it.hasNext()){
Map.Entry entry=it.next();
System.out.println(entry.getKey()+” : ”+entry.getValue());
}
Map的entrySet()方法返回一个Set集合,在这个集合中存放了Map.Entry类型的元素,每个Map.Entry对象代表Map中的一对键与值。
Map有两种比较常用的实现:HashMap和TreeMap.
HashMap按照哈希算法来存取键对象,有很好的存取性能,为了保证HashMap能正常工作,和HashSet一样,要求当两个键对象通过equals()方法比较为true时,这两个键对象的hashCode()方法返回的哈希码也一样。
TreeMap实现了SortedMap接口。能对键对象进行排序。