- 博客(6)
- 收藏
- 关注
原创 对于Java集合框架的整理与理解(Hashmap底层源码解析:链表转换红黑树篇)
首先让我们依然从一开始的putVal方法讲起 (建议看过上篇对于Java集合框架的整理与理解(Hashmap底层源码解析:添加数据篇(红黑树在下篇))再看这篇。) 这里推荐个红黑树可视化的网址 红黑树可视化 源码: final V putVal(int hash, K key, V value, boolean onlyIfAbsent, boolean evict) { Node<K,V>[] tab; Node<K,V>
2021-09-14 16:01:41
274
1
原创 对于Java集合框架的整理与理解(Hashmap底层源码解析:添加数据篇(红黑树在下篇))
首先,new一个Hashmap,先看看它最基本的构造方法 HashMap<Object,Object> map = new HashMap<>(); Hashmap定义的一些变量源码: static final int DEFAULT_INITIAL_CAPACITY = 1 << 4;//默认初始容量2的四次方16 static final int MAXIMUM_CAPACITY = 1 << 30;//最大容量2的三十次方 static
2021-09-11 16:33:19
229
原创 对于Java集合框架的整理与理解(Linkedlist双向链表的添加与删除解析)
对Linkedlist双向链表的添加与删除的解析, 内含对LInkedlist源码及简单图示
2021-09-11 03:46:39
197
原创 对于Java集合框架的整理与理解(Arraylist扩容机制详解)
Arraylist算是集合框架中比较常用的数据结构,其底层的实现也是比较简单的,可以将其理解为 能够实现动态扩容的数组。 接下来对Arraylist的扩容机制进行解析: 最初new一个Arraylist对象时: ArrayList arrayList = new ArrayList<>(); 源码: public ArrayList() { this.elementData = DEFAULTCAPACITY_EMPTY_ELEMENTDATA; } 可以看
2021-09-10 17:36:55
176
原创 对于Java集合框架的整理与理解(Arraylist和Linkedlist效率篇)
对于Java集合框架的整理与理解(Arraylist和Linkedlist效率篇) Arraylist与Linkedlist 众所周知,Arraylist和Linklist的区别在于: Arraylist 增删慢,查询快。 Linkedlist 增删快,查询慢。 但如果将Arraylist与Linkedlist进行相比较的话,这俩句话是完全正确的吗? 让我们从最开始的查询讲起。 首先是Arraylist: 根据index查询的时间复杂度无疑是O(1) 根据元素进行查找的速度为O(n) (也就是
2021-09-09 18:01:11
255
原创 JAVA输入日期查看闰年,当月天数,周几
import java.util.Scanner; public class newriqi { public static void main(String[] args) { //输入格式为年-月-日 Scanner in = new Scanner(System.in).useDelimiter("-|\\s"); int nian = in.nextInt(); int yue = in.nextInt(); int ri = in.nextInt.
2021-05-20 17:12:03
308
空空如也
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人