目录

1. HashTable的基本介绍

源码分析:

2. Hashtable 和  HashMap对比 

3. Map接口实现类- Properties


1. HashTable的基本介绍

1. 存放的元素是键值时:即 K-V

2. hashtable的键和值都不能为null

3. hashTable使用方法基本上和HashMap一样

4. hashTable是线程安全,hashMap是线程不安全的

源码分析:

底层数组Hashtable$Entry[]  初始化大小为11

临界值threshold  8   = 11 * 0.75

扩容:按照自己的扩容机制来进行即可  执行方法 addEntry(hash,key,value,index);添加K-V 封装到Entry

          当 if (count >= threshold)满足时,就进行扩容

          按照 int newCapacity = (oldCapacity << 1)+1 ; 的大小扩容 


2. Hashtable 和  HashMap对比 

HashMap  线程不安全  效率高 允许null键null值

Hashtable  线程安全     效率低  不允许null键null值


3. Map接口实现类- Properties

1. Properties类继承自Hashtable类并且实现了Map接口,也是使用一种键值对的形式来保存数据。

2. 使用特点和Hashtable类似

3. Properties还可以用于从xxx.properties文件中,加载数据到Properties类对象,并进行读取和修改

Logo

Agent 垂直技术社区,欢迎活跃、内容共建。

更多推荐