HashMap LinkedHashMapHashTableTreeMap 和 Properties 的区别

Posted fankongkong

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HashMap LinkedHashMapHashTableTreeMap 和 Properties 的区别相关的知识,希望对你有一定的参考价值。

HashMap

1、线程不安全

2、允许null value 和 null key;

3、访问效率比较

4、Java1.2引进的Map接口的一个实现

5、轻量级;

6、根据键的HashCode()值存储数据的位置;

7、遍历时,取得的数据的顺序是完全随机的;

8、最多允许一条记录的键为空

9、允许多条记录的值为空

10、在Map中插入、删除和定位元素,HashMap是较好的选择;

LinkedHashMap

1、保存了记录的插入顺序

2、可以按照插入顺序应用次数排序;

3、如果需要按照输入和输出的顺序相同,用LinkedHashMap;

HashTable

1、支持线程的同步,线程安全的一个Collection;

2、不允许有null value 和 null key;

3、效率下;

4、继承于Dictionnary类;

5、比Hashmap

TreeMap

1、实现SortedMap接口;

2、能将保存的记录根据键排序,默认升序排序;

3、如果要按自然顺序方式或自定义顺序遍历键,用TreeMap;

Properties

1、用于配置文件定义和操作,使用频率比较

2、键和值都是字符串;

以上是关于HashMap LinkedHashMapHashTableTreeMap 和 Properties 的区别的主要内容,如果未能解决你的问题,请参考以下文章

HashMap详解

hashmap性能跟数据量关系

为啥面试要问hashmap 的原理

HashMap 概述

Java中HashMap详解

Java中HashMap详解