集合框架基础
文章平均质量分 94
一只会说话的河马
这个作者很懒,什么都没留下…
展开
-
Java集合 | HashMap源码分析
下文基于JDK1.8。 前言 如果大家看到过前两篇关于ArrayList和LinkedList的文章,相信对Java集合已经有了一定的基础了。在这基础之上,今天要来学习的HashMap。我想大家应该经常性用到这个类,如果你也渴望了解背后的实现原理,那么就跟着我一起来学习吧。 什么是Hash Hash是把任意长度的输入通过散列算法变换成固定长度的输出,该输出就是散列(hash)值,一个好的散列算法应该包括一下两点: 散列后唯一性高 散列密度大 既然说到hash,肯定对应一个老生常谈的问题:什么是hash碰原创 2021-03-20 21:50:35 · 166 阅读 · 2 评论 -
图解LinkedList
上一篇说了ArrayList,这篇文章主要谈谈LinkedList的实现。这两个集合类在我们学习或工作过程中是很常用的,某度上面随便一搜,出来的就是它们两个之间的异同点。我们知道ArrayList是基于动态数组的,而LinkedList是基于链表的。往下我会逐层剖析LinkedList为什么插入快,查询慢的问题。但在这之前,让我们先看看链表是什么 链表 先看一下链表的定义:链表是一种物理存储单元上非连续、非顺序的存储结构,数据元素的逻辑顺序是通过链表中的指针链接次序实现的。链表由一系列结点(链表中每一个元素原创 2021-03-04 23:10:04 · 739 阅读 · 3 评论 -
ArrayList这篇就够了
1.前言 在平时工作过程中,ArrayList算是Java集合框架中比较常用的数据结构之一,相对来说也是比较重要的一个类。看完这篇文章你会学习到: 基本使用 内部实现 优缺点 让我们开始吧! 2.如何使用 先来看一个最简单的例子: List<String> list = new ArrayList<String>(); //增加 list.add("Hello"); list.add("World"); list.add("my"); list.add("friend");原创 2021-03-04 16:58:57 · 3706 阅读 · 11 评论