对HashSet集合的思考
学习HashSet的思考
疑问:创建自定义类型的HashSet时,为什么引用类型用Set?
学习心得(不一定正确):因为HashSet需要有两个参数传递Key和Value,因为Value是Key值的附属,所以如需进行遍历操作,需将Key存储到一个容器(即一个集合中),而HashSet需要两个值,所以就创建一个Set集合。
扩展:
Set集合底层是创建了map,添加元素则调用了map.put()方法,也需传入两个参数,代码底层则将value初始化默认值为空。
public boolean add(E e) {
return map.put(e, PRESENT==null);
}

浙公网安备 33010602011771号