/*
* Map集合:该集合存储键值对。一对一对往里存。而且要保证键的唯一性。
* 1.添加
* put(K key,V value)
* putAll();
* 2.删除。
* clear()
* remove(object key)
* 3.判断。
* containsKey()
* containsValue()
* isEmpty()
* 4.获取。
* get(object key);
* size()
* values()
*
* entrySet()
* keySet()
*
*
* Map
* |--Hashtable:底层是哈希表数据结构,不可以存入null键null值。该集合是线程同步的。jdk1.0,效率低
* |--HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的。jdk1.2,效率高
* |--TreeMap:底层是二叉树数据结构,线程不同步,可以用于map集合中的键进行排序
*
* 和Set很像。
* 其实,Set底层是使用了Map集合
*
*
* map集合两种取出方式:
* 1.keySet: 将马屁中所有的键存入到Set集合。因为set具备迭代器。
* 所有可以用迭代方式取出所有的键。再根据get方法,获取每一个键对应的值。
*
* Map集合取出原理:将map集合转换成set集合,再通过迭代器取出。
*
*
* 2.Set<Map.entry<k,v>> entrySet:将map集合中的映射关系存入到了set集合,
* 而这个关系的数据类型就是Map.Entry
*
*
*/
package test.itheima;
import java.util.*;
public class DemoMap {
/**
* @param args
*/
public static void main(String[] args) {
Map<String, String> map = new HashMap<String, String>();
map.put("01", "zhangsan1");
map.put("02", "zhangsan2");
map.put("03", "zhangsan3");
System.out.println("ContansKey:" + map.containsKey("01"));
// 将Map集合中的映射关系取出,存入到Set集合中。
Set<Map.Entry<String, String>> entrySet = map.entrySet();
Iterator<Map.Entry<String, String>> it = entrySet.iterator();
while (it.hasNext()) {
Map.Entry<String, String> me = it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println(key + ":" + value);
}
}
}
[黑马程序员]集合--Map
最新推荐文章于 2014-04-19 22:48:51 发布