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

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© fmi110 高级黑马   /  2015-10-5 15:12  /  339 人查看  /  1 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

HashSet 是用Map实现的,向set添加元素,其实就是向内部的map添加一个Key,即添加的元素作为key,而值为一个静态Object对象,即所有 的key都映射到该对象上,set的删除调用了额 map.remove(key),如果key存在  则返回真,否则返回假
  1. public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable,
  2.                 java.io.Serializable {
  3.         static final long serialVersionUID = -5024744406713321676L;

  4.         private transient HashMap<E, Object> map;

  5.         private static final Object PRESENT = new Object();

  6.         public boolean add(E e) {
  7.                 return map.put(e, PRESENT) == null;
  8.         }

  9.         public boolean remove(Object o) {
  10.                 return map.remove(o) == PRESENT;
  11.         }
  12. }
复制代码


1 个回复

倒序浏览
赵存金 来自手机 中级黑马 2015-10-5 16:12:37
沙发
还没学到这个类。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马