E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
集合源码
【Java集合 从源码透析,月薪上万不是梦】简单理解
集合源码
解析一、前言二、List集合(一)ArrayList(1)ArrayList的方法(2)ArrayList底层源码实现和解析(二)LinkdedList(1)LinkdedList的方法(2)LinkdedList
积善之家-必有余庆
·
2023-01-26 12:38
#java集合
java
数据结构
《码出高效:java开发手册》六-数据结构与集合(一)
前言本章主要是讲数据结构与集合,这章内容涉及到非常基础的知识,内容相对较多,首先从数组讲起,引申到集合框架,之后再到
集合源码
,最后介绍了高并发集合框架集合集合在代码中是collection,对应英文为set
JoshuaGraham
·
2022-12-24 10:00
java开发手册
java
数据结构
算法
Android面试必备的
集合源码
详解,讲的明明白白!
Android全局异常处理在做android项目开发时,大家都知道如果程序出错了,会弹出来一个强制退出的弹出框,这个本身没什么问题,但是这个UI实在是太丑了,别说用户接受不了,就连我们自己本身可能都接受不了。虽然我们在发布程序时总会经过仔细的测试,但是难免会碰到预料不到的错误。今天就来自定义一个程序出错时的处理,类似iphone的闪退。(虽然闪退也是用户不愿意看到的,但是在用户体验上明显比那个原生
赵是水瓶座
·
2022-11-27 09:02
程序员
android
Java面试专项——集合专题四——一文带你搞懂fail-fast机制
不知道大家在翻阅
集合源码
的时候是否注意到了这个问题,ArrayList、LinkedList、Vector、HashMap、TreeMap、HashSet等集合实现类的类注释中都有下面这两段话(见下面的图片
城南皮卡丘
·
2022-10-27 17:52
Java面试专栏
java
面试
Java源码阅读学习后的浅析和感悟(JDK篇)(持续更新)
目录Java源码阅读学习后的浅析和感悟(JKD篇)-为什么阅读源码集合框架类-为什么会要引入集合-集合结构图(部分)ArrayList
集合源码
分析-扩容机制-关键方法解释(DEFAULTCAPACITY_EMPTY_ELEMENTDATA
孔表表uuu
·
2022-10-26 07:21
Java源码
java
Java
集合源码
解析:TreeMap
本文概要二叉查找树的用处二叉查找树,以及二叉树带来的问题平衡二叉树的好处红黑树的定义以及构造红黑树在TreeMap的运用二叉树的好处可能许多人会有疑问,为什么要使用二叉树,有那么多的数据结构,比如数组、链表等简单看下数组和链表的优缺点数组优势:查找快,通过索引直接定位数据。时间复杂度O(1)劣势:删除和插入元素比较麻烦,需要移动的元素比较多。时间复杂度O(n)链表优势:删除和插入比较方便,直接修改
dk2077
·
2022-10-16 07:51
Java集合源码解析
Java集合源码解析
Java集合类
Java
TreeMap
红黑树
[JDK
集合源码
系列] -- JDK1.8HashMap源码解析
因为热爱所以坚持,因为热爱所以等待。熬过漫长无戏可演的日子,终于换来了人生的春天,共勉!!!1.HashMap概述HashMap继承体系从继承体系可以看出:HashMap实现了Cloneable接口,可以被克隆HashMap实现了Serializable接口,属于标记性接口,HashMap对象可以被序列化和反序列化。HashMap继承了AbstractMap,父类提供了Map实现接口,具有Map的
Free的午后
·
2022-05-14 07:30
JDK源码
java
开发语言
hash
哈希算法
记一次自己动手实现一个简单神经网络
从简单的开始,先实现一个二分类模型,使用印第安人糖料病数据集,数据
集合源码
可直接在github获取:github记一次自己动手实现一个简单神经网络参数初始化定义激活函数前向传播损失函数实现BP(BackwardPropagation
贤aaaaaaaaaaaaaaaa
·
2022-03-01 07:34
神经网络
深度学习
机器学习
pytorch
Java
集合源码
之ArrayList
便于增强自己对集合的理解和记忆,准备出一系列java
集合源码
的阅读以及解析,本系列基于JDK1.8。
薛定谔的脑子
·
2022-02-17 14:03
Java中的接口多继承机制
目录问题原因一个接口可以同时继承多个接口接口不能实现任何接口一个类可以实现多个接口一个类只能继承一个父类总结:问题原因今天在看
集合源码
的时候,突然看到接口继承接口,觉得有点差异,以前写代码也就是类继承一个类
·
2022-02-14 18:37
Java
集合源码
分析-HashMap和IdentityHashMap
HashMap基本是面试必问的数据结构了。理解了HashMap,IdentityHashMap就很简单了,所以主要介绍HashMap,文章最后对IdentityHashMap简单说明下就能理解的。HashMap底层数据结构是数组称之为哈希桶table,哈希桶的长度一定会是2的次方(这样在根据key的hash值寻找对应的哈希桶时,可以用位运算替代取余操作,更加高效),每个桶里面放的是链表(从源码中可
宛丘之上兮
·
2022-02-14 11:31
新版javase必备核心知识篇
写在前面本文章共1万字,涉及知识包括,基础的运算符,数据类型,
集合源码
等知识,可用于八股文复习,也可用于加深知识。
chandfy
·
2022-02-05 18:43
笔记
java
开发语言
后端
[
集合源码
]——ConcurrentHashMap源码分析
笔记整理自黑马程序员全面深入学习Java并发编程,从《Java并发编程的艺术》作为补充文章目录为什么要使用ConcurrentHashMap原理解析️JDK7中源码分析⚙️构造器分析⏳put流程⏳get流程size计算流程JDK8中源码分析重要方法⚙️构造器分析⏳get流程size计算流程整体分析为什么要使用ConcurrentHashMap⚠️线程不安全的HashMapHashMap在并发执行
一定会去到彩虹海的麦当
·
2022-02-04 17:20
集合源码系列
java
集合
java集合【13】——— Stack源码分析走一波
前言
集合源码
分析系列:Java
集合源码
分析前面已经把Vector,ArrayList,LinkedList分析完了,本来是想开始Map这一块,但是看了下面这个接口设计框架图:整个接口框架关系如下(来自百度百科
·
2022-01-10 08:06
java源码
看jdk源码大师亲自操刀编写的
集合源码
!
全文共计1959字18图,预计阅读时间13分钟大家好,我是tin,这是我的第8篇原创文章这个图拍摄于老家县城一售楼处。作为外出上班的一族,一年365天在家的时间常常不超过十天。在侃技术前,聊一聊自己对家乡变化的感慨。最大的感慨莫过于,我们县城要通高铁了,以后老家和工作之地的距离将变成2小时!想想就觉得这是一件多么幸福的事。今年过年回家趁着假期和家人又新购置了一套新商品期房,就买高铁站片区边上。在家
·
2021-12-05 21:58
java
HashMap红黑树入门(实现一个简单的红黑树)
1.2树结构常用术语1.3二叉搜索树2.红黑树原理讲解2.1红黑树的性质:2.2红黑树案例分析3.手写红黑树4.HashMap底层的红黑树5将链表转换为红黑树treeifyBin()总结:JDK
集合源码
之
·
2021-10-15 12:51
关于Java Guava ImmutableMap不可变
集合源码
分析
目录JavaGuava不可变集合ImmutableMap的源码分析一、案例场景二、ImmutableMap源码分析JavaGuava不可变集合ImmutableMap的源码分析一、案例场景遇到过这样的场景,在定义一个static修饰的Map时,使用了大量的put()方法赋值,就类似这样——publicstaticfinalMapdayMap=newHashMapdayMap=ImmutableMa
·
2021-09-07 14:39
JDK
集合源码
之解析TreeMap(一)
目录简介继承体系存储结构源码解析属性Entry内部类构造方法get(Objectkey)方法特性再回顾左旋右旋插入元素插入再平衡插入元素举例总结简介TreeMap使用红黑树存储元素,可以保证元素按key值的大小进行遍历。继承体系TreeMap实现了Map、SortedMap、NavigableMap、Cloneable、Serializable等接口。SortedMap规定了元素可以按key的大小
·
2021-08-19 11:28
Set
集合源码
解析
HashSet特点允许元素为null元素不可重复hashmap(数组+链表+红黑树)不安全扩容机制hashset本质就是使用hashmap作为底层的结构,这里就直接介绍hashmap扩容机制如果使用无参构造创建hashset,则第一次执行add操作,会直接初始化一个长度为16的数组,且根据16x0.75的加载因子,会得到一个临界值12,也就是说,这个临界值在后面是真正触发扩容的值,我不等到你满了才
·
2021-08-09 12:45
JDK
集合源码
之解析TreeMap(二)
目录删除元素删除再平衡删除元素举例二叉树的遍历TreeMap的遍历总结删除元素删除元素本身比较简单,就是采用二叉树的删除规则。如果删除的位置有两个叶子节点,则从其右子树中取最小的元素放到删除的位置,然后把删除位置移到替代元素的位置,进入下一步。如果删除的位置只有一个叶子节点(有可能是经过第一步转换后的删除位置),则把那个叶子节点作为替代元素,放到删除的位置,然后把这个叶子节点删除。如果删除的位置没
·
2021-08-04 10:07
java进阶|LinkedBlockingDeque源码分析
这是关于java集合类源码分析文章的最后一篇,后面或许会随着自己的一些理解,自己还是会再来写一两篇
集合源码
分析的文章,因为目前自己的理解,有些集合的源码自己确实理解不了,所以我就不继续分析其它
集合源码
了
公众号后端Coder
·
2021-06-26 04:06
Java
集合源码
分析之Map(六):LinkedHashMap
LinkedHashMap是HashMap的子类,所以也具备HashMap的诸多特性。不同的是,LinkedHashMap还维护了一个双向链表,以保证通过Iterator遍历时顺序与插入顺序一致。除此之外,它还支持AccessOrder,即按照元素被访问的顺序来排序,我们熟知的LRUCache底层就依赖于此。以下是文档中需要我们注意的点:Hashtableandlinkedlistimplemen
大大纸飞机
·
2021-06-22 02:03
Java
集合源码
分析-TreeMap
成员变量:privatefinalComparatorcomparator;privatetransientEntryroot;privatetransientintsize=0;privatetransientintmodCount=0;privatetransientEntrySetentrySet;privatetransientKeySetnavigableKeySet;privatetr
宛丘之上兮
·
2021-06-13 22:51
java进阶|LinkedBlockingDeque源码分析
这是关于java集合类源码分析文章的最后一篇,后面或许会随着自己的一些理解,自己还是会再来写一两篇
集合源码
分析的文章,因为目前自己的理解,有些集合的源码自己确实理解不了,所以我就不继续分析其它
集合源码
了
公众号后端Coder
·
2021-06-11 03:24
Java
集合源码
分析(十四):TreeMap
TreeMap是红黑树Java版的实现。如果还有小伙伴对红黑树还不是很了解的话,可以去之前的文章看一看。红黑树能保证对增删改查等基本操作的时间复杂度保持在O(lgN).接下来就让我们一起来看看TreeMap的底层源码。一、TreeMap继承结构从图中我们可以看到,TreeMap继承了父类AbstractMap类,也实现了Cloneable、NavigableMap还有Serializable接口。
不会编程的派大星
·
2021-05-20 17:17
Java集合源码
数据结构
java
集合
二叉树
源码
总结与规划
从今年的四月份开始,我就着手研究数据结构以及它们的Java实现,也就是JDK中的Java
集合源码
,以及基于这些数据结构的各种排序、查找等算法,到现在也算是收获颇丰。
大大纸飞机
·
2021-05-18 17:05
Java
集合源码
分析(十三):sortedMap和NavigableMap
由于乱序的数据对查找不利,例如无法使用二分法等降低算法的时间复杂度,如果数据在插入时就排好序,查找的性能聚会提升很多。sortedMap接口就是为这种有序的数据服务的。一、sortedMap接口sortedMap接口需要数据的key支持Comparable,或者可以被指定的Comparator接受。sortedMap主要提供了以下方法://返回排序数据所用的ComparatorComparator
不会编程的派大星
·
2021-05-17 22:19
Java集合源码
算法
java
数据结构
集合
源码
Java
集合源码
分析(十二):超级接口Map
我们在前面说到的无论是链表还是数组,都有自己的优缺点,数组查询速度很快而插入很慢,链表在插入时表现优秀但查询无力。哈希表则整合了数组与链表的优点,能在插入和查找等方面都有不错的速度。我们之后要分析的HashMap就是基于哈希表实现的,不过在JDK1.8中还引入了红黑树,其性能进一步提升了。今天我们来说一说超级接口Map。一、接口MapMap是基于Key-Value的数据格式,并且key值不能重复,
不会编程的派大星
·
2021-05-17 22:38
Java集合源码
链表
java
数据结构
源码
集合
Java
集合源码
分析(十一):LinkedList
首先我们知道,LinkedList的底层实现是一个双向链表,链表与数组的差别我们更是清楚,所以LinkedList弥补了ArrayList增删较慢和效率较低的问题了,但是在改和查方面有逊色于ArrayList,所以在使用时要根据业务场景灵活选择。对于这两个使用最频繁的集合类,掌握他们的源码并正确使用,可以让我们的代码更高效。步入主题,LinkedList既实现了List,又实现了Deque接口,前
不会编程的派大星
·
2021-05-17 11:15
Java集合源码
java
队列
链表
数据结构
集合
Java
集合源码
分析之基础(四):二叉排序树
解决查询速度慢的方案除了哈希表外,还可以使用二叉排序树。我们知道,查询慢主要是因为不知道元素的位置,使用hash函数映射虽然解决了问题,但其并不稳定,当出现大量的哈希碰撞后其表现更像一个链表,查询速度大大降低。二叉排序树的方案则是使元素有序,这样便可以使用二分法进行查找了,虽然效率相比hash函数低一些,但可以通过AVL树、红黑树等增加稳定性。HashMap在JDK1.8的实现中,就结合了哈希表的
大大纸飞机
·
2021-05-16 16:56
Android ANR机制的原理以及问题分析(二)
本篇我们将
集合源码
,对四种Service类型的触发机制做详尽的介绍。二、ServiceTimeoutService
csbhwy
·
2021-05-13 23:19
Android框架相关
anr
android
service
【Java
集合源码
剖析1.4】Stack源码剖析(API23)
Vector继承自Vector,Stack是栈。它的特性是:先进后出(FILO,FirstInLastOut)。它常用的API如下:booleanempty()synchronizedEpeek()synchronizedEpop()Epush(Eobject)synchronizedintsearch(Objecto)1.入栈操作publicEpush(Eitem){addElement(ite
MrLuo
·
2021-05-12 22:31
Java基础之ArrayList源码解析
Java
集合源码
解析系列Java基础之HashMap源码解析Java基础之LinkedHashMap源码解析Java基础之HashTable源码解析Java基础之LinkedList源码解析HashSet
xxq2dream
·
2021-05-08 01:38
Java 基础(三)
集合源码
解析 Collection
前面我们讲到了集合的定义以及集合的Iterator。我们知道集合分为Collection和Map,今天我们的重点是学习Collection。什么是集合我们再来回顾一下集合解决了什么问题:在编译期间不知道要多少个对象,但是数组必须在申明的时候明确指明数组长度,如果使用数组,申请太多的空间就会造成资源浪费,如果申请太少空间,就不够用,所以引出了一个概念叫“集合”。从这里我们可以看出,集合的特性有:类似
Anonymous___
·
2021-05-04 17:52
集合源码
(一)| ArrayList源码剖析
学习源码,应该是一件认真与钻研的功课,点滴积累。packagejava.util;publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cloneable,java.io.Serializable{//privatestaticfinallongserialVersionUID=8683452581122892189L
采风JS
·
2021-04-22 09:36
数据结构之树与二叉树
早在分析Java
集合源码
时,我们对树和二叉树就有了基本的了解,部分知识可以查看Java
集合源码
分析之基础(三):树与二叉树。本文在此基础上,介绍树和二叉树的存储、特性,以及部分知识的Java参考代码。
大大纸飞机
·
2021-04-21 22:21
HashMap源码剖析(JDK1.8)
写在前面最近有空就去翻了下JDK的
集合源码
,之前也去看了下,但理解得不是很透彻,这次是更深入的了解,顺便记录下。List和Set的实现相对比较简单,这里不深入讲解。
Harlin_
·
2021-04-20 04:01
Java
集合源码
浅析
简介Java集合类是Java将一些基本的和使用频率极高的基础类进行封装和增强后再以一个类的形式提供。集合类是可以往里面保存多个对象的类,存放的是对象,不同的集合类有不同的功能和特点,适合不同的场合,用以解决一些实际问题。Java中的集合类可以分为两大类:一类是实现Collection接口;另一类是实现Map接口Collection中的集合称为单列集合(单身狗),Map中的集合称为双列集合(情侣)。
帅大叔的简书
·
2021-04-15 01:39
JDK1.8中HashMap
集合源码
解析
文章目录简介内部结构源码分析1.构造方法2.put方法3.get方法4.resize方法简介HashMap主要用来存放键值对,它基于哈希表的Map接口实现,是常用的Java集合之一。JDK1.8之前HashMap由数组+链表组成的,数组是HashMap的主体,链表则是主要为了解决哈希冲突而存在的(“拉链法”解决冲突)。JDK1.8之后HashMap的组成多了红黑树,在满足下面两个条件之后,会执行链
yan-x-long
·
2021-03-30 17:47
java
基础
java
List
集合源码
注意:基于jdk1.81.ArrayList1.1ArrayList类结构1.1.1Cloneable接口一个类要调用clone()方法,就要实现Cloneable接口并且重写Object的clone()方法,否则会报CloneNotSupportedException异常,并且要在clone()方法中调用了super.clone(),这意味着无论clone类的继承结构是什么样的,都调用了java
小满和小王
·
2021-01-28 21:48
list
java
Kotlin 泛型(上)
一、前言在Kotlin集合的变换与聚合中我们已经将Kotlin的集合变换与聚合讲完了,我们都知道
集合源码
中用到了很多泛型的知识,所以我们今天我们来讲Kotlin的泛型。
Maenj_Ba_lah
·
2021-01-17 21:50
android
kotlin
Kotlin 泛型(上)
一、前言在Kotlin集合的变换与聚合中我们已经将Kotlin的集合变换与聚合讲完了,我们都知道
集合源码
中用到了很多泛型的知识,所以我们今天我们来讲Kotlin的泛型。
Maenj_Ba_lah
·
2021-01-17 20:50
android
kotlin
PyQt小型桌面应用程序
集合源码
源码来自:12580code.com#源码介绍基于PyQt框架写的小型桌面应用程序的集合。想用Python写桌面应用的小伙伴,这个项目应该可以帮到你。下面是PyQt框架写的应用例子,需要的小伙伴拉到文末自取哦,可以自行二开哦。Web浏览器(无标记)-“MooseAche”Web浏览器(选项卡式)-“MozzarellaAshbadger”扫雷-“Mounsweeper”记事本-“No2Pads”计
风雨百万路-
·
2021-01-14 10:46
源码
源码
python
qt
集合源码
之ArrayList源码分析
啊哈哈哈,今天来说一下ArrayList的源码。ArrayList是list的一种在java.util包下继承了AbstractList类,实现了RandomAccess,Cloneable,java.io.Serializable接口当我们进这三个接口里面看的时候,发现这三个接口里面竟然一句代码没有。那么为什么还要实现这三个接口呢?是要起到一个标记的作用。这三个接口说明支持随机访问,可以克隆,可
niceguy_smile
·
2021-01-13 13:06
javase
java
集合源码
分析(一):Collection 与 AbstractCollection
概述我们知道,java中容器分为Map集合和Collection集合,其中Collection中的又分为Queue,List,Set三大子接口。其下实现类与相关的实现类子类数量繁多。我们仅以最常使用的List接口的关系为例,简单的画图了解一下Collection接口List部分的关系图。1.81.pngList集合的实现类关系图根据上图的类关系图,我们研究一下源码中,类与类之间的关系,方法是如何从
廖111
·
2021-01-08 17:18
Android小技巧:Android面试必备的
集合源码
详解,附赠课程+题库
概述想了很久怎么样可以让文章的标题不那么悲观,但是各种文案都在我脑海里面不断的被否定,要么是不那么抓眼球,要么是立意不匹配。最后想了想,这个标题是真的符合我最近的感悟。希望看过文章,能有同感的朋友也能多思考一下。最近因为疫情的关系,相信很多国内的小伙伴都逐渐开始了解到在家上班的体验。在美国基本上workfromhome在IT公司里面算是比较常见的现象了。一般大厂每个周都会有一天被划为NoMeeti
小小陈刀仔
·
2021-01-05 16:25
程序员
Android
2020-12-30
年轻人不讲武德,一起聊聊List集合(三)猿医生2020-12-2816:15:451379收藏5分类专栏:
集合源码
系列文章标签:java最后发布:2020-12-2816:15:45首次发布:2020
weixin_46315812
·
2020-12-30 08:26
集合源码系列
java
为什么线程安全的List推荐使用CopyOnWriteArrayList,而不是Vector
一、Vector
集合源码
简析由于本文的重点不是Vector集合,因此只是简单的分
Java旅途
·
2020-12-28 12:15
java
后端
List
vector
线程安全
为什么线程安全的List推荐使用CopyOnWriteArrayList,而不是Vector
一、Vector
集合源码
简析由于本文的重点不是Vector集合,因此只是简单的分
Java旅途
·
2020-12-28 11:11
java
后端
List
vector
线程安全
HashMap底层红黑树实现(自己实现一个简单的红黑树)
文章整理于小刘老师讲源码视频学习链接:小刘老师讲解红黑树JDK
集合源码
之HashMap解析(上)JDK
集合源码
之HashMap解析(下)1.树结构入门1.1什么是树?
兴趣使然の草帽路飞
·
2020-11-09 16:03
JDK
JUC源码
数据结构与算法
java
数据结构
上一页
1
2
3
4
5
6
7
8
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他