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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 13556793092 中级黑马   /  2014-5-17 16:31  /  1133 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

我们先定义一个Course 类  再c=new Course(),用set =new HashSet() 来存储这个吃 c ,当我们调用set.comtains(A)时,这里的A 如果不是Course类的 是不是返回false ,或者说在这里只有A 为Course类 才有意义????

评分

参与人数 1技术分 +1 收起 理由
李小然 + 1 赞一个!

查看全部评分

1 个回复

倒序浏览
首先,c=new Course(), 这是创建了一个Course类的对象c 当你存入HashSet() 集合中的对象就是c对象,如果Contains (A)不是Course 类,那肯定对象也不是同一个,就会出现set中不包含指定A对象,返回False, ,如果A为你已经存入set集合中的对象,那就为true   如果都不是Course 类那创建的对象能和c一样吗? hashSet 底层依靠哈希表(其实就是哈希值)为了保证存入的对象唯一, 就有hashCode 和equals 方法,你类名都不一样,创建的对象的哈希值一定不一样,当对象名一样,在用equals 方法判断其类容相同不。

评分

参与人数 1技术分 +1 收起 理由
轻语。 + 1

查看全部评分

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马