jdk源码阅读-HashMap


前置阅读:

jdk源码阅读-Map : http://www.cnblogs.com/ccode/p/4645683.html

在前置阅读的文章里,已经提到HashMap是基于Hash表实现的,所以在讲解HashMap之前 ,有必要提前了解下Hash的原理。

。。。

我们可以从这个网址中找到HashMap对应的API列表,相信熟悉Java的人应该对这些方法已经很熟悉了。

http://tool.oschina.net/apidocs/apidoc?api=jdk_7u4

方法和属性列表:

构造函数:

Hash()

 

构造函数:

 1  public HashMap(int initialCapacity, float loadFactor) {
 2         if (initialCapacity < 0) //如果
 3             throw new IllegalArgumentException("Illegal initial capacity: " +
 4                                                initialCapacity);
 5         if (initialCapacity > MAXIMUM_CAPACITY)
 6             initialCapacity = MAXIMUM_CAPACITY;
 7         if (loadFactor <= 0 || Float.isNaN(loadFactor))
 8             throw new IllegalArgumentException("Illegal load factor: " +
 9                                                loadFactor);
10 
11         this.loadFactor = loadFactor;
12         threshold = initialCapacity;
13         init();
14     }

该构造函数一般情况下初学者可能用的较少。该构造函数的定义是

 

 

HashMap():

1 public HashMap() {
2         this(DEFAULT_INITIAL_CAPACITY, DEFAULT_LOAD_FACTOR);
3 }

会自动调用带String参数的构造方法

构造一个空的HashMap。其默认的初始容量为 16,负载因子为 0.75 

在这里需要介绍几个概念:

初始容量:

负载因子:散列表的实际元素数目(n)/ 散列表的容量(m)。

智能推荐

注意!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系我们删除。



 
© 2014-2019 ITdaan.com 粤ICP备14056181号  

赞助商广告