论坛首页 入门技术论坛

Hashtable啊Hashtable今天载到在你手里了!

浏览 12066 次
该帖已经被评为新手帖
作者 正文
   发表时间:2011-02-21  
应该用HashMap嘛,containsKey, containsValue.更明确
0 请登录后投票
   发表时间:2011-02-21  
smaxpp 写道
应该用HashMap嘛,containsKey, containsValue.更明确


HashTable也有ontainsKey方法。只是楼主一不看JavaDoc,二不用Map接口抽象。
0 请登录后投票
   发表时间:2011-02-21  
thihy 写道
smaxpp 写道
应该用HashMap嘛,containsKey, containsValue.更明确


HashTable也有ontainsKey方法。只是楼主一不看JavaDoc,二不用Map接口抽象。



同感。API可能容易忽略。但是如果养成
Map<...> map = new Hashtable<...>
而不是
Hashtable .... = ....
的习惯,就不会出现这个问题了。
0 请登录后投票
   发表时间:2011-02-22  
多看看api doc很重要,其实很多问题java的api doc中都写得很清楚,我之前就碰到一个关于api设计的问题也很纠结,后来也是详细的看了之后才明白的。

如果再不懂,我觉得可以可以看源代码的,况且jdk的源代码是open source的,侯捷说的好啊:源码面前,了无秘密。

所以我觉得有机会还是多看看源码是必要的,即便看不懂,看看代码的coding style也是很好的,我看云风有时也是这么干的。^_^。。。。
0 请登录后投票
   发表时间:2011-04-20  
langyu 写道
从代码看,好像是历史问题造成的。Java 1.0版本是使用contains()方法,在1.2版本才引入 Java Collections Framework,抽象了Map接口。此接口中包含containsKey()与containsValue()方法,因为有功能的重复,所以Hashtable的containsValue()只是内部自己处理了下,尽管方法声明上有提示,但还是会造成我们的误解,这样不好

我只是觉得为什么Hashtable里既然有了containsKey和containsValue为什么还要加一个contains方法且功能和containsValue一样呢?
0 请登录后投票
   发表时间:2011-06-15   最后修改:2011-06-15

dotjar 写道

今天整个上午都在调试一个程序,我就纳了闷了,NND,为什么我明明把ip存进内存 了,重复查询的时候还是去硬盘?

调啊调都没看明白,后来一看JDK才明白,娘西皮滴!

  原来Hashtable的contains(Object),指的是是否包含value而不是key!!!

  竟然和Map的containsValue(Object value)在功能上是一样的。吃里爬外的方法!
   汗的教训哪!!
       



Hashtable很少用了,木在项目里面用过

 

0 请登录后投票
论坛首页 入门技术版

跳转论坛:
Global site tag (gtag.js) - Google Analytics