黑马程序员:集合类——3
---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流! ----------------------
Map集合: 该集合存储键值对,一对一对的往里存,而却要保证键的唯一性。
Hashtable :Map的子类,底层是哈希表数据结构,不可以存入null键和值,线程是同步的。
HashMap : Map的子类 , 狄成是哈希表数据结构,可以存入null键和值,线程不同步。
TreeMap: Map的子类,底层是二叉树结构,线程不同步,可以给Map集合中键进行排序。
Map 和Set 很想, 其实Set底层就是使用了Map 集合。
Map集合的两种取出方式, keySet 将Map中所有的键存入Set集合中,因为Set 具备迭代器,
所有可以迭代方式取出所有的键,在根据get方法取出每一个键对应的值。
// 先获取map集合的所有健的Set集合,keySet。
Set<String> keySet = map.keySet();
// 有了Set集合 , 就可以获取其迭代器。
for (Iterator<String> it = keySet.iterator(); it.hasNext(); )
{
String key = it.next();
String value = map.get(key);
System.out.println("Set:"+key+"::"+value);
}
第二种:entrySet将Map集合中的映射关系存入到Set集合中,
而这个关系的数据类型就是,Map.Entry。
Map<String,String> map = new HashMap<String,String>();
map.put("01","wangwu1");
map.put("02","wangwu2");
map.put("03","wangwu3");
Set<Map.Entry<String,String>> entry = map.entrySet();
for (Iterator<Map.Entry<String,String>> it = entry.iterator(); it.hasNext(); )
{
Map.Entry<String,String> me =it.next();
String key = me.getKey();
String value = me.getValue();
System.out.println("key:-"+key+"-:value:-"+value);
}
---------------------- <a href="http://edu.csdn.net/heima" target="blank">android培训</a>、<a href="http://edu.csdn.net/heima" target="blank">java培训</a>、期待与您交流! ----------------------