Java知识:HashSet详解
来源:互联网 发布:图片识别手写数字算法 编辑:程序博客网 时间:2024/06/06 03:49
HashSet如何实现的?
它是由HashMap实现的,不保证元素的顺序,而且HashSet允许使用 null 元素。
HashSet是非同步的。
如果想要在多线程中使用HashSet可以使用 Collections.synchronizedSet 方法来“包装” set
Set s = Collections.synchronizedSet(new HashSet(…));
HashSet里的HashMap和普通的HashMap有什么不同吗?
因为HashSet中只需要用到key,而HashMap是key-value键值对;
所以,向map中添加键值对时,键值对的值固定是PRESENT
private static final Object PRESENT = new Object();
public boolean add(E e) {
return map.put(e, PRESENT)==null;
}
HashSet里面的每个HashMap里面的Value都是PRESENT
普通的HashMap里面Value是随意的。
理解了HashMap就能很快的理解HashSet
参考资料:
http://www.cnblogs.com/skywang12345/p/3311252.html
阅读全文
0 0
- Java知识:HashSet详解
- java中HashSet详解
- java中HashSet详解
- java中HashSet详解
- Java中hashSet详解
- java中HashSet详解
- Java中HashSet详解
- java中HashSet详解
- Java中HashSet详解
- java基础--HashSet详解
- java中HashSet详解
- Java中HashSet详解
- Java数据类型 | HashSet详解
- java中HashSet详解
- Java HashSet详解
- java中HashSet详解
- java中HashSet详解
- java中HashSet详解
- Web前端性能优化策略
- mac上mysql中文乱码问题
- 职称论文发表途径
- HDU 1045 Fire Net
- Caused by: java.net.SocketException: Software caused connection abort: socket write error
- Java知识:HashSet详解
- css居中,进度条
- css的各种居中
- 数据结构之双向链表
- STM32F429HAL库ADCDMA学习笔记
- Mac 下MAMP Pro MySQL无法启动报 Error: could not open single-table tablespace file ./mysql/innodb_table_sta
- 详解内部类
- 关于eclipse中部署到service中时显示部署名称不正确的解决办法
- Java 集合框架(转载)