A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 爱java爱生活 中级黑马   /  2015-6-21 21:50  /  490 人查看  /  3 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文


hash算法的原理:有一个hash函数:如function(element)
{
       如”ab“

     ('a'+'b')%数组长度=index;
这样每个元素的下标就是唯一了;
但是这样就不能从重复了,保证元素唯一性;hashset这样查找元素就快多了--查找元素直接丢算法里,如果下标对应元素相同则就存在

存取元素相同就不存;
}
HashSet里面是否包含某个对象:
1:先判断值;用的是hashcode方法求的hash值相比,值不同直接不比了,元素不存在;
2:判断内容;用的是equals方法来比较,

3 个回复

正序浏览
对的!!
回复 使用道具 举报
嗯。。。。。
回复 使用道具 举报
可以的 说的不错. 差不多就是这个意思. 但是最好别把hashcode方法中返回的值固定, 若固定则每次都要比较equals方法, 效率是很慢的.
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马