![](https://img-blog.csdnimg.cn/20201014180756757.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
java集合详解
文章平均质量分 89
Xixw
中国国籍,科学作息,没有眼袋~
平凡至极又可爱非常~
想做一个:)只记得快乐和知识点的漂酿妹子~
展开
-
Java集合之HshTable与ConcorrentHashMap
Java集合之HshTable与ConcorrentHashMap2.3 HashTableHashTable和HashMap的操作是相同的,区别如下:(1)HashTable是线程安全的,HashMap是非线程安全的。所以HashMap比HashTable的性能更高。(2)HashTable不允许用于null值作为key或者value,但是HashMap是可以的。2.3.1 HashTable底层实现原理HashTable和HashMap的实现原理几乎一样,差别无非是以上两点,但是HashTa原创 2021-05-10 11:31:06 · 156 阅读 · 0 评论 -
Java集合之 HashMap底层实现原理(JDK1.8)
HashMap底层实现原理(JDK1.8)首先复习一下数组和链表数组特点存储区间是连续,且占用内存严重,空间复杂也很大,时间复杂为O(1)。优点:是随机读取效率很高,原因数组是连续(随机访问性强,查找速度快)。缺点:插入和删除数据效率低,由于插入数据的时候插入的位置后面的数据在内存中要往后移动,且大小固定不易动态扩展。链表特点区间离散,占用内存宽松,空间复杂度小,时间复杂度O(N)。优点:插入删除速度快,内存利用率高,没有大小固定,扩展灵活。缺点:不能随机查找,每次都是从第一个开始遍历(查原创 2021-04-21 17:15:21 · 515 阅读 · 1 评论 -
Java集合之TreeSet
Java集合之TreeSet2.2 TreeSet2.2.1 TreeSet底层实现和构造函数package java.util;public class TreeSet<E> extends AbstractSet<E> implements NavigableSet<E>, Cloneable, java.io.Serializable{ private transient NavigableMap<E,Object> m;//原创 2021-04-20 11:19:49 · 117 阅读 · 0 评论 -
Java集合之HashSet
Java集合之HashSet注意:文章中的源码分析均根据JDK1.8版本来分析2.1 HashSet2.1.1 HashSet底层实现和构造函数package java.util;import java.io.InvalidObjectException;public class HashSet<E> extends AbstractSet<E> implements Set<E>, Cloneable, java.io.Serializable原创 2021-04-20 11:16:15 · 69 阅读 · 0 评论 -
Java集合之Vector
Java集合之Vector2.3 VectorVector和Stack在集合中用的特别少,因此这里只是简单介绍一下。2.3.1 Vector底层原理和构造方法public class Vector<E> extends AbstractList<E> implements List<E>, RandomAccess, Cloneable, java.io.Serializable{ protected Object[] elementData;原创 2021-04-19 11:29:11 · 272 阅读 · 0 评论 -
Java集合之ArrayList详解
Java集合ArrayList详解2.1 ArrayListArrayList是List接口的一个实现类。2.1.1 ArrayList底层实现和构造函数package java.util;import java.util.function.Consumer;import java.util.function.Predicate;import java.util.function.UnaryOperator;public class ArrayList<E> extends原创 2021-04-17 12:17:49 · 125 阅读 · 1 评论 -
Java集合之LinkedList详解
Java集合之LinkedList详解2.2 LinkedList从集合框架图就可以看到,LinkedList既是List接口的实现也是Queue接口的实现(Deque),它可以根据索引来随机的访问集合中的元素,还实现了Deque接口,它还是一个队列,可以被当成双端队列来使用。故其和ArrayList相比LinkedList支持的功能更多。在介绍LinkedList之前我们先复习一下有关链表的知识:链表是由一系列非连续的节点组成的存储结构,简单分类的话,链表分为单向链表和双向链表,而单向和双向链表又原创 2021-04-19 11:17:55 · 265 阅读 · 2 评论 -
Java常用集合详解
Java集合详解一.了解集合二.List集合Collection集合常用操作方法List与数组的区别List和Set的区别List接口常用的三个实现类ArrayList和linkedList比较ArrayList和Vector比较三.Set集合二级目录二级目录二级目录四.Map集合一.了解集合为了存储并处理大量的数据必须具备相应的存储结构,之前学习了数组,但是发现数组在使用的过程中有限制:数组长度一旦确定,就无法更改;除非采用建立新的数组,将原来的数组内容拷贝过去。数组中只能存放指定的数据类型,操作不方原创 2021-04-15 11:14:48 · 693 阅读 · 1 评论