java中的hashmap和hashtable他们有什么不同? map 是图,可以1对多的叫做图 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 hashmap是新的api如果你是在jdk1.3以后,最好用hashmap Hashtable 在collection framework出现前已经有散列表一个,速度快Hashmap implements map这个interface, key-value的关系 其实他们两个的功能基本上是一样的.都是键值对方式存储,而且键不能有重复.之所以出现两个是因为JAVA1之后又出现了JAVA2.JAVA1当中有写类设计的不太好.例如awt.所以在JAVA2中他们试图改变这种不好的设计.于是就出现了hashmap和hashtable.hashtable是JAVA1里的东西.论效率来讲,他不如JAVA2的hashmap.所以现在一般用hashmap. 首先,HashTable和Hashmap看上去根List差不多,所不同的是,List使用index position来定位element的,Map却是由另一个key object来定位element,所以,如果可以很简单地把element放入List(add(ele)),放入Map就还雪要一个Key object(put(key, ele)).如果你不知道Synchronized是什么意思,那么就不用知道HashTable和Hashmap间的主要的那个区别了,你就当sun公司从来没有写过HashTable那个类,用Hashmap all the time.如果你知道Synchronized,那么HashTable是thread safe,所谓的thread safe就会影响速度,而且在实际应用中,光光sychronized底层结构是不够的。这个问题已经被人讨论过n次了,这里不想再提。 hashtable在jdk1.3以后已经逐渐不推荐使用了,效率比hashmap低,但实现了同期化,就跟vector和ArrayList之间的区别一样 Map翻译映射,不严格的说就是“键(KEY)--值(VALUE)”对的集合,可以通过一个键找到一个值,其中键和值可以是任意类型的对象,映射中定义了一些基本操作,可以使用PUT方法向映射中加入一个键值对,映射中不能包含重复的键,否则新的覆盖旧的,使用GET方法可以取出指定键所对应的值,如果键值不存在返回NULL。HashTable继承与Dictionary完成了Map接口,而Hashmap继承于AbstractMap,AbstractMap完成了Map接口,两个类基本上是等价的,楼上已有介绍,我再说几句,它们还有点不同,Hashmap不是同步的,因此在PUT和GET 的时间由程序员来保证同步,Hashmap允许键和值为NULL。现在说的是Hashmap是HashTable的替代,效率上是前者稍微快点,也不是很明显 我觉得HashMap和HashTable其实在功能上差不多,但是HashMap比HashTable快,所以HashMap即将取代HashTable hashmap 是映射关系,就像函数一样hashtable 是一个列表像数组一样 问:hashtable是一个key对应一个value而hashmap可以是一个key加多个value吗??? 时间比较的问题 JAVA读取串口数据编码的问题 关于数组的调用 大家帮忙谢谢 大家帮我看看这个程序是什么原因吧,谢谢了!!! JDBC连接异MySQL特慢,需要近半分钟,而连接本地半秒不到就连上了,偶已没有办法了。 jsp页面中调用applet的问题 求各位大侠指教:一个applet的问题,进者有分!!!!! 请问如何在JAVA程序中移动鼠标的位置? 为什么Classloader可以加载xml等资源文件呢? 用java开发应用程序,能否形成.exe文件? JFrame问题:如何在窗体一打开就处于最大化状态 求linux下path与classpath设置方法,
如果你是在jdk1.3以后,最好用hashmap
Hashmap implements map这个interface, key-value的关系
如果你不知道Synchronized是什么意思,那么就不用知道HashTable和Hashmap间的主要的那个区别了,你就当sun公司从来没有写过HashTable那个类,用Hashmap all the time.
如果你知道Synchronized,那么HashTable是thread safe,所谓的thread safe就会影响速度,而且在实际应用中,光光sychronized底层结构是不够的。这个问题已经被人讨论过n次了,这里不想再提。
HashTable继承与Dictionary完成了Map接口,而Hashmap继承于AbstractMap,AbstractMap完成了Map接口,两个类基本上是等价的,楼上已有介绍,我再说几句,它们还有点不同,Hashmap不是同步的,因此在PUT和GET 的时间由程序员来保证同步,Hashmap允许键和值为NULL。
现在说的是Hashmap是HashTable的替代,效率上是前者稍微快点,也不是很明显
hashtable 是一个列表像数组一样
hashtable是一个key对应一个value
而hashmap可以是一个key加多个value吗???