最近面试的时候老是会碰到这样的问题,人家问你,HashTable和HashMap有什么区别与联系,我就写了一个相同点,不同点一个也没写出来,当时囧的很
说来也惭愧,没想到自己的java基础这么不扎实,很多知识都不明白。
好了,说说这个Map接口下的三个子接口吧:
Map
|-----HashTable
|-----HashMap
|-----TreeMap
HashTable:在java 1.0版本就出现了这个HashTable,采用的是键值对的方式存储的,数据结构是哈希表,线程是同步的,相比效率低,不允许存储null Key和Null Value
HashMap:在java1.2版本就出现了这个HashMap,采用的也是键值对的方式存储的,数据结构是哈希表,线程是不同步的,相比效率高,允许存储null Key 和null Value
TreeMap:采用的也是键值对的方式存储的,数据结构是二叉树,线程是不同步的,按照键来进行排序的。