黑马程序员技术交流社区

标题: HashSet,HashMap和Hashtable的区别 [打印本页]

作者: 于洋洋    时间: 2011-7-26 13:37
标题: HashSet,HashMap和Hashtable的区别
HashSet,HashMap和Hashtable的区别 ,以及都在什么情况下用?
作者: 匿名    时间: 2011-7-26 14:02
HashSet:底层数据结构是哈希表;当建立某个将要存入HashSet对象中的话,将会在内存中生成对应的地址,这个地址会存入到HashSet对象中,这些存入的地址是按Hash值存储的,是无序的。这就是为什么说HashSet内的元素是无序的。如果存入的哈希值相同,还会比较对象是否相等,如果不相等则哈希值顺延。

HashTable:底层是哈希表数据结构,不可以存入null键null值。该集合是线程同步的。jdk1.0出现。

HashMap:底层是哈希表数据结构,允许使用null值和null键,该集合是不同步的。jdk1.2出现,效率相对HashTable要高。




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2