黑马程序员:集合框架Map
2012-02-25 00:10
323 查看
---------------------- android培训、java培训、期待与您交流! ----------------------
keySet():将map中所有的键存入到Set集合,应为set具备迭代器,所以可以取出所有的键,
在根据get方法,获取每一个键对应的值。
entrySet():将map集合中的映射关系存入到set集合中,而这个关系的数据类型就是map.entry
Map: 和Set很像,其实Set底层就是使用了Map集合。
|--Hashtable:底层是哈希表数据结构,不可以存入null键null值,线程同步。jdk1.0
|--HashMap:底层是哈希表数据结构,允许使用null键null值,该集合是不同步的。jdk1.2
|--TreeMap:底层是二叉树数据结构,线程不同步,可以用于给map集合中的键进行排序。
---------------------- android培训、java培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net/heima
Map集合:该集合存储键值对,一对一对往里存,而且要保证键的唯一性。
1.添加元素 put(K key,V value) putAll(Map<? extends K,?extends V> m) 2.删除元素 clear() remove(Object key) 3.判断元素 containsValue(Object value) containsKey(Object key) isEmpty() 4.获取元素 get(Object key) size() values()
keySet():将map中所有的键存入到Set集合,应为set具备迭代器,所以可以取出所有的键,
在根据get方法,获取每一个键对应的值。
entrySet():将map集合中的映射关系存入到set集合中,而这个关系的数据类型就是map.entry
Map: 和Set很像,其实Set底层就是使用了Map集合。
|--Hashtable:底层是哈希表数据结构,不可以存入null键null值,线程同步。jdk1.0
|--HashMap:底层是哈希表数据结构,允许使用null键null值,该集合是不同步的。jdk1.2
|--TreeMap:底层是二叉树数据结构,线程不同步,可以用于给map集合中的键进行排序。
import java.util.*; class MapDemo { 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(map.contansKey("022")); System.out.println(map.remove("02")); System.out.println(map.get("023")); //可以通过get方法的返回值来判断一个键是否存在,通过返回null来判断 //获取map集合中所有的值 Collection<String> coll = map.values(); //获取map中的所有键值对。 //先获取map集合的所有键的set集合,keySet(); Set<String> keySet = map.keySet(); Iterator<String> it = keySet.iterator(); while(it.hasNext()) { String key = it.next(); //有了键可以通过map集合的get方法获取对应的值。 String value = map.get(key); System.out.println(key,value); } //////////////////////////////////////////////////////////////////// //将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.Entry 其实Entry也是一个接口,它是Map接口中的一个内部接口 interface Map { public static interface Entry { public abstract Object getKey(); public abstract Object getValue(); } } class HashMap implements Map { class Hahs implements Map.Entry { public Object getKey(){} public Object getValue(){} } } */ } }
---------------------- android培训、java培训、期待与您交流! ----------------------详细请查看:http://edu.csdn.net/heima
相关文章推荐
- 黑马程序员——java第十四、五、六天:集合框架(一:Collection、Map)
- 黑马程序员_Java基础_集合框架成员Map
- 黑马程序员——集合框架(二) ——Map
- 黑马程序员——API集合框架-Set、Map
- 黑马程序员----Java集合框架学习笔记2 Map-工具类-泛型
- 黑马程序员——>第十六天<集合框架(Map)>
- 黑马程序员——JAVA基础------集合框架(四)----Map集合
- 黑马程序员--集合框架(map集合,Collections,Arrays)
- 黑马程序员——Java语言基础:集合框架(Collection、Map,工具类Collections、Arrays)
- 黑马程序员_学习笔记:10) 集合框架2:Set(HashSet、TreeSet)、Map(Hashtable、HashMap、TreeMap)、Collections、Arrays
- 黑马程序员:集合框架Map
- 黑马程序员--07.集合框架--10.【Map.Entry内存结构】【Map集合的迭代方式】
- 黑马程序员--Map集合、集合框架工具类
- 黑马程序员:集合框架Map
- 黑马程序员--(Map与集合框架工具类的知识总结)
- 黑马程序员--07.集合框架--09.【集合Map】
- 黑马程序员-集合框架之Map
- 黑马程序员--集合框架(三)map
- 黑马程序员--java基础--集合框架Set,集合框架map
- 黑马程序员——集合——Map——集合框架中的工具类