注:以下源码基于jdk1.7.0_11
Set集合其实是对Map集合的封装,Map集合存储的是键值对,那么我们将值隐藏,不向外界暴露,这样就形成了Set集合。
对应Map集合的两个很重要的实现HashMap(基于哈希表),TreeMap(基于红黑树),Set集合也对应了两个类HashSet和TreeSet。由于之前花很多篇幅介绍了HashMap和TreeMap,在此将不再介绍其...
分类:
其他好文 时间:
2014-08-24 00:24:41
阅读次数:
248
注:以下源码基于jdk1.7.0_11
之前介绍了一系列Map集合中的具体实现类,包括HashMap,HashTable,LinkedHashMap。这三个类都是基于哈希表实现的,今天我们介绍另一种Map集合,TreeMap。TreeMap是基于红黑树实现的。
介绍TreeMap之前,回顾下红黑树的性质:
首先,我们要明确,红黑树是一种二叉排序树,而且是平衡二叉树。因而红黑树...
分类:
其他好文 时间:
2014-08-23 23:01:21
阅读次数:
510
八月 22, 2014 8:02:39 下午 org.hibernate.annotations.common.Version INFO: HCANN000001: Hibernate Commons Annotations {4.0.2.Final}八月 22, 2014 8:02:39 下午 o...
分类:
系统相关 时间:
2014-08-22 21:04:09
阅读次数:
380
上一篇分析了LinkedHashMap源码,这个Map集合除了拥有HashMap的大部分特性之外,还拥有链表的特点,即可以保持遍历顺序与插入顺序一致。另外,当我们将accessOrder设置为true时,可以使遍历顺序和访问顺序一致,其内部双向链表将会按照近期最少访问到近期最多访问的顺序排列Entry对象,这可以用来做缓存。
这篇文章分析的LruCache并不是jdk中的类,而是来自安卓...
分类:
其他好文 时间:
2014-08-20 10:33:46
阅读次数:
171
Map map = new HashMap();for (int i = 0; i > iter = map.entrySet().iterator();while (iter.hasNext()) { Map.Entry entry = (Map.Entry) iter.next(); ...
分类:
其他好文 时间:
2014-08-19 14:09:34
阅读次数:
245
注:以下源码基于jdk1.7.0_11
之前的两篇文章通过源码分析了两种常见的Map集合,HashMap和Hashtable。本文将继续介绍另一种Map集合——LinkedHashMap。
顾名思义,LinkedHashMap除了是一个HashMap之外,还带有LinkedList的特点,也就是说能够保持遍历的顺序和插入的顺序一致,那么它是怎么做到的呢?下面我们开始分析。
...
分类:
其他好文 时间:
2014-08-19 11:03:54
阅读次数:
259
注:以下源码基于jdk1.7.0_11
上一篇分析了HashMap的源码,相信大家对HashMap都有了更深入的理解。本文将介绍Map集合的另一个常用类,Hashtable。
Hashtable出来的比HashMap早,HashMap 1.2才有,而Hashtable在1.0就已经出现了。HashMap和Hashtable实现原理基本一样,都是通过哈希表实现。而且两者处理冲突的方式也一...
分类:
其他好文 时间:
2014-08-15 10:45:09
阅读次数:
260
注:以下源码基于jdk1.7.0_11
之前的几篇文章介绍了List集合中一些比较常见的类,比如ArrayList、LinkedList、Vector等。本篇文章将介绍集合框架的另一块内容——Map集合。本文主要介绍HashMap。
先回顾下哈希表。
哈希表定义:根据设定的hash函数和处理冲突的方式(开放定址、公共溢出区、链地址、重哈希...)将一组关键字映...
分类:
其他好文 时间:
2014-08-14 10:57:28
阅读次数:
373
Map集合:该集合存储键值对。一对一对往里存。而且要保证键的唯一性。
1,添加。
put(K key, V value)
putAll(Map m)
2,删除。
clear()
remove(Object key)
3,判断。
containsValue(Object value)
containsKey(Object key)
isEmpty()...
分类:
其他好文 时间:
2014-07-21 23:29:21
阅读次数:
324
Map接口 实现Map接口的类用来存储键(key)-值(value) 对。Map 接口的实现类有HashMap和TreeMap等。Map类中存储的键-值对通过键来标识,所以键值不能重复。HashMap: 线程不安全,效率高. 允许key或value为nullHashTable:线程安全,效率低. ....
分类:
其他好文 时间:
2014-07-11 18:56:07
阅读次数:
335