Hashtable,hashset,hashmap的原理和区别

来源:互联网 发布:money理财通mac版 编辑:程序博客网 时间:2024/05/01 15:10

hashtable和hashset的区别:

这两个从不同的接口继承下来的,两者完全不一样,前者数据以<key,value>的形式储存,后者是存储单个对象的。


hashtable和hashmap的区别:


1:hashtable是基于陈旧的类继承下来的(Dictionary),hashmap是java引进的map接口的一个实现;

2:hashtable是同步的,而hashmap不是同步的(异步就是一个对象可以同时给多个线程访问,同步就是一个对象只能给一个线程访问,其他线程都得排队等着),hashmap可以利用Collections类的静态的synchronizedMap()方法,它创建一个线程安全Map对象,并把它作为一个封装的对象来返回。这个对象的方法可以让你同步访问潜在的HashMap;

3:hashtable<key,value>不允许有空值的存在,hashmap允许最多一个key为空,value可以允许多个为空。

0 0
原创粉丝点击