黑马程序员技术交流社区

标题: hashset取值问题 [打印本页]

作者: 山水游客    时间: 2012-7-25 15:27
标题: hashset取值问题
我知道用hashset存入元素的时候是根据哈希值来存的,然后把哈希值存入哈希表。那么,取值的时候是按照哈希值的大小来取的么?还是按照哈希表的顺序来取的啊

作者: 李菁    时间: 2012-7-25 20:22
取值的时候是按照哈希值的大小来取,因为存入数据时是按哈希表上的哈希值顺序存的,存入数据时已经排好序了
作者: 陈云帆    时间: 2012-7-25 20:51
取的时候也是根据哈希表的,只不过怎样取,是根据你自己定义的,
你让他按照某个条件取出,那么它就按照你的条件一个一个的把值取出来,
只不过它在取的过程中自己根据哈希表有计算了一次罢了,
HashSet实现了Set接口的hash table(哈希表),依靠HashMap来实现,
应该为要存放到散列表的各个对象定义hashCode()和equals(),
因为实现了set接口所以不能有重复的元素。
我用hashset就喜欢它的不可重复元素性质。

希望对你有用!




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