Java源码分析:Guava之不可变集合ImmutableMap的源码分析

Java源码分析:Guava之不可变集合ImmutableMap的源码分析

一、案例场景遇到过这样的场景,在定义一个static修饰的Map时,使用了大量的put()方法赋值,就类似这样——public static final Map<String,String> dayMap= new HashMap<>(); static { dayMap.p...

Java 集合框架03---ArrayList的源码分析

Java 集合框架03---ArrayList的源码分析

上篇我们学习了Collection的相关源码,下面我们将继续学习List 家族中最常用的一个集合ArrayList。我们将从以下几个方面剖析ArrayList。1.ArrayList的简介2.ArrayList的数据结构3.ArrayList的扩容机制4.ArrayList的遍历注意事项全文对Arr...

「大师课」搞定 Java 开发基础

23 课时 |
8714 人已学 |
免费

Java Spring Boot 2.6.0开发实战-1024程序员节创造营公益课

5 课时 |
1162 人已学 |
免费

Java Web开发-Web应用、Tomcat、HTTP请求与响应

17 课时 |
1440 人已学 |
免费
开发者课程背景图
Java进阶:【集合】1.8 jdk Arraylist和Vector集合源码分析

Java进阶:【集合】1.8 jdk Arraylist和Vector集合源码分析

1.8 jdk Arraylist集合源码分析底层数组,size是有效数据的长度,在1.8中调用无参数构造器时底层的elementdata数组初始化为{ }add方法在调用add方法后底层数组才重新赋值,为新的数组,长度为10,节省了内存,只有在需要添加的时候我们才要创建数组Vecto...

Java 集合基础源码分析

集合 1:Map背景如果一个海量的数据中,需要查询某个指定的信息,这时候,可能会犹如大海捞针,这时候,可以使用 Map 来进行一个获取。因为 Map 是键值对集合。Map这种键值(key-value)映射表的数据结构,作用就是通过key能够高效、快速查找value。举一个例子:import java...

Java集合源码分析之开篇

初衷Java集合是我们使用最频繁的工具,也是面试的热点,但我们对它的理解仅限于使用上,而且大多数情况没有考虑过其使用规范。本系列文章将跟随源码的思路,分析实现的每个细节,以期在使用时避免各种不规范的坑。在这里,我们会惊艳于开发者优秀的设计,也会感激先辈们付出的艰辛努力,更重要的是知其所以然,少犯错误...

Java集合源码分析之Iterable概述

前言当我们想要遍历集合时,Java为我们提供了多种选择,通常有以下三种写法:写法1:for循环for (int i = , len = strings.size(); i < len; i++) {System.out.println(strings.get(i));}写法2:foreach循...

Java集合源码分析之超级接口:Collection

CollectionCollection是List、Queue和Set的超集,它直接继承于Iterable,也就是所有的Collection集合类都支持for-each循环。除此之外,Collection也是面向接口编程的典范,通过它可以在多种实现类间转换,这也是面向对象编程的魅力之一。方法定义在阅...

Java集合源码分析之Set概述与总结

Java集合源码分析系列到此就结束了,关于Set的知识会在这里进行简单的总结,除此之外,则是学习之后的一些感受。Set概述Set是一个包含不可重元素的集合,也就是所有的元素都是唯一的。文档说明如下:A collection that contains no duplicate elements. M...

Java入门系列之集合HashMap源码分析

我们知道在Java 8中对于HashMap引入了红黑树从而提高操作性能,由于在上一节我们已经通过图解方式分析了红黑树原理,所以在接下来我们将更多精力投入到解析原理而不是算法本身,HashMap在Java中是使用比较频繁的键值对数据类型,所以我们非常有必要详细去分析背后的具体实现原理,无论是C#还是J...

死磕 java集合之ArrayDeque源码分析

死磕 java集合之ArrayDeque源码分析问题(1)什么是双端队列? (2)ArrayDeque是怎么实现双端队列的? (3)ArrayDeque是线程安全的吗? (4)ArrayDeque是有界的吗? 简介双端队列是一种特殊的队列,它的两端都可以进出元素,故而得名双端队列。 ArrayDeq...

本页面内关键词为智能算法引擎基于机器学习所生成,如有任何问题,可在页面下方点击"联系我们"与我们沟通。

产品推荐

社区圈子

Java开发者
Java开发者
Java开发者成长课堂,课程资料学习,实战案例解析,Java工程师必备词汇等你来~
287384+人已加入
加入
相关电子书
更多
Java单元测试实战
Java应用提速(速度与激情)
Java工程师必读手册
立即下载 立即下载 立即下载