HashSet是Set接口的典型实现,因此不能包含有重复元素。同时也是无序的(这个无序是指遍历HashSet时得到的元素顺序跟add进入的顺序会不一样)。此外元素可以是null,但只能添加一个null元素,并且null元素放在第一位。 new HashSet()对象其实是new HashMap()对 ...
分类:
其他好文 时间:
2019-05-16 21:43:11
阅读次数:
120
题目: 给定一个链表,判断链表中是否有环。 为了表示给定链表中的环,我们使用整数 pos 来表示链表尾连接到链表中的位置(索引从 0 开始)。 如果 pos 是 -1,则在该链表中没有环。 示例 1: ...
分类:
其他好文 时间:
2019-05-15 19:18:00
阅读次数:
157
话不多说直接上开始 目前知道的是,初始容量为16,最大容量为32位。 二、分析: 1.hashmap采用的是一个hashset的数组,以及在每个数组对应一个单向链表。 2.每个Enrty<key,value>以节点的方式存储在链表中。 三、具体分析: 1.节点(Node): (1).key值固定,因 ...
分类:
其他好文 时间:
2019-05-13 23:28:36
阅读次数:
226
HashSet是Set接口的典型实现 大多数时候使用Set集合时就是使用这个实现类 按Hash算法来存储其中的元素,因此具有很好的存取和查询性能 特点: 1、不能保证元素的排序、顺序有可能发生变化(无序) 2、HashSet不是同步的,如果多个线程同时访问一个HashSet,如果有2条或者两条以上的 ...
分类:
其他好文 时间:
2019-05-11 23:07:11
阅读次数:
138
一、HashSet源码注释 public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable { static final long serialVersionUID = ...
分类:
编程语言 时间:
2019-05-11 18:29:16
阅读次数:
109
Set源码: SortedSet源码 HashSet源码 TreeSet源码 ...
分类:
其他好文 时间:
2019-05-11 18:02:57
阅读次数:
102
1.set接口 set接口是一个无序的、唯一的容器(排列顺序与添加的顺序无关) set接口提供的方法 set接口的遍历方法 set接口的实现类常用的有HashSet、LinkHashSet、TreeSet 1.1 HashSet HashSet是Set接口的实现类,底层数据结构是哈希表。 HashS ...
分类:
其他好文 时间:
2019-05-06 01:02:37
阅读次数:
148
HashSet是Set接口的实现类,其底层数据结构为哈希表。 HashSet是线程不安全的(不保证同步)。 HashSet优点:添加、删除、查询效率高。 缺点:无序 哈希表的工作原理: 首先,拿到元素,计算元素的HashCode值,使用根据y=K(x)的哈希函数计算出元素的存储位置,如果该位置没有元 ...
分类:
其他好文 时间:
2019-05-05 22:00:50
阅读次数:
155
一.简介 java集合类包含在java.util包下,集合类存放的是对象的引用,而非对象本身,集合类型主要分为Set,List和Map。 1.1java集合类图 二.集合详解 2.1HashSet HashSet是Set接口的子类,主要特点是: 1)不能存放重复元素; 2)元素的插入顺序与输出顺序不 ...
分类:
编程语言 时间:
2019-05-05 19:22:02
阅读次数:
169
1.HashSet HashSet是无序的,而且里面的元素不可重复,每个对象都有其对应的hashCode()方法,hashCode()方法主要是获得该对象的散列码,其值就是对象的内存地址,但是String除外。 ArrayList如果不知道元素的下标那么就要全部遍历一遍,而HashSet则不用,所以 ...
分类:
其他好文 时间:
2019-05-04 14:57:54
阅读次数:
162