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容器
java容器
和基础类源码分析总结
目录源码分析说明基础类和接口源码分析基本类基本接口函数式接口工具类
java容器
关系图Collection的子类源码分析CollectionListQueueSetMap的子类源码分析旧的容器类源码分析说明本次源码分析基本是基于
xushiyu1996818
·
2020-09-14 13:20
总结
java容器
java
java容器
类TreeSet源码分析
目录简介字段m,PRESENT构造函数5个iterator,descendingIterator,descendingSetsize,isEmpty,contains,add,remove,clear,addAllsubSet,headSet,tailSet,各2个,comparator,first,lastlower,floor,ceiling,highter,pollFirst,pollLas
xushiyu1996818
·
2020-09-14 13:20
源码分析
java容器
java容器
类HashSet源码分析
目录简介字段map,PRESENT构造函数5个查询iterator,size,isEmpty,contains操作add,remove,clearclone,readObject,writeObjectspliterator简介/***这个类实现Set接口,由一个散列表(实际上是一个HashMap实例)支持。*它不保证集合的迭代顺序;特别是,它不能保证顺序保持不变。该类允许null元素。**这个类
xushiyu1996818
·
2020-09-14 13:20
源码分析
java容器
源码-
Java容器
-1.总体认识
title:源码-
Java容器
-1.总体认识date:2019-08-1500:37:25categories:JavaSE
Java容器
tags:
Java容器
top:
Java容器
部分所有的内容都是基于Java1.8
h2linlin
·
2020-09-14 13:13
JavaSE
Java容器
_Set_HashSet源码分析
Set接口是上文介绍的容器的第四个接口,也是最后一个接口,也是实现起来最容易的接口。(1)Set接口是Collection接口的子接口,Set接口没有提供额外的方法;(2)Set接口的特性是容器类中的元素是没有顺序的,而且不可以重复;(3)Set容器可以与数学中“集合”的概念相对应;(4)JDKAPI中所提供的Set容器类有HashSet,TreeSet等。打开Set接口的源码:publicint
widenstage
·
2020-09-14 13:37
java
容器
java
set
hashset
源码
Java基础:
Java容器
之LinkedList
定义实现List接口与Deque接口双向链表,实现了列表的所有操作,并且允许包括null值的所有元素,对于LinkedList定义我产生了如下疑问:1.Deque接口是什么,定义了一个怎样的规范?2.LinkedList是双向链表,其底层实现是怎样的,具体包含哪些操作?下文将围绕这两个问题进行,去探寻LinkedList内部的奥秘,以下源码是基于JDK1.7.0_79。结构类结构LinkedLis
郑能量TuT
·
2020-09-14 13:21
java汇总
java
Java容器
之源码分析(面试必备!)
(1)、概览以及容器中使用的设计模式:
Java容器
系列——(一)概览以及容器中使用的设计模式(2)、ArrayList源码分析:
Java容器
源码(一)——ArrayList(基于JDK8)(3)、Vector
XHHP
·
2020-09-14 12:43
Java基础
Java容器
源码分析-HashSet vs TreeSet vs LinkedHashSet
2019独角兽企业重金招聘Python工程师标准>>>这几天看了下容器的源码,总结一下HashSetvsTreeSetvsLinkedHashSet的区别,如下图,collection的继承实现分支,这里先只讲解set分支1、HashSetvsTreeSetvsLinkedHashSet三者的数据结构分析(1)HashSet:由哈希表(实际上是一个HashMap实例)支持。它不保证set的迭代顺序
weixin_34244102
·
2020-09-14 12:34
java
python
数据结构与算法
Java容器
类源码分析之Iterator与ListIterator迭代器(基于JDK8)
一、基本概念迭代器是一个对象,也是一种设计模式,Java有两个用来实实现迭代器的接口,分别是Iterator接口和继承自Iterator的ListIterator接口。实现迭代器接口的类的对象有遍历集合对象,选择集合中的元素和删除集合中元素的方法。而在使用它时不必知道该集合对象底层的结构。Java类库中实现Iterator接口的迭代器只能正向遍历集合中的元素,而实现ListIterator接口的迭
weixin_34034670
·
2020-09-14 12:30
java源码分析之HashSet
http://blog.csdn.net/jzhf2012/article/details/8540696
Java容器
类的用途是“保存对象”,分为两类:Map——存储“键值对”组成的对象;Collection
weixin_30530523
·
2020-09-14 12:20
java
java容器
源码分析--HashSet(JDK1.8)
HashSet的实现是基于HashMap的,在了解过HashMap的源码(
java容器
源码分析–HashMap(JDK1.8))后,再看HashSet的源码,会简单很多,所以本文也会简短很多。
w1992wishes
·
2020-09-14 12:15
Java
java容器
源码分析--LinkedList(JDK1.8)
本篇结构:前言数据结构重要参数常用方法源码分析疑问解答分析总结一、前言ArrayList和LinkedList都是很常用的容器,它们适合不同的场景。对于随机访问和设置频繁的场景,应该选用ArrayList,因为ArrayList是基于一个动态数组的容器;而对于插入和删除频繁的场景,应该选用LinkedList,ArrayList插入和删除都需要复制数组,会消耗一定的性能,LinkedList则没有
w1992wishes
·
2020-09-14 12:15
Java
Java容器
类源码-Vector的最全的源码分析(一)
一、概述我们都知道,在Java的Collections包含了List和Set,而List里面有ArrayList、LinkedList、还有Vector,对于很多Java初学者来说,前面两个比较常用,ArrayList查询效率比较高(底层是数组实现),而LinkedList的增删效率比较高(底层是双向链表实现)。那么Vector是什么呢?它和ArrayList、LinkedList一样,支持有序可
Java搬砖师
·
2020-09-14 12:12
死磕
Java容器
—HashSet
深入了解HashSet。环境eclipse2019-03(4.11.0)jdk-12.0.1eclipse中查看源码的方法:按住Ctrl键,鼠标左键单击代码(更详细请百度)。容器:在Java中,“集合”有另外的用途,所以ArrayList、HashMap等皆称为容器类,其创建的一个对象就是一个容器。简介HashSet是接口Set的一个实现类,故继承了Set的重要特性“不接受重复元素”,HashSe
黯叶
·
2020-09-14 12:09
死磕源码
Java容器
系列-HashMap源码分析
HashMap实现了Map接口。HashMap使用的很广泛,但不是线程安全的,如果在多线程中使用,必须需要额外提供同步机制(多线程情况下推荐使用ConCurrentHashMap)。HashMap的类图相对简单,主要就是继承了AbstractMap,有一点需要注意,虽然没有实现Iterable接口,但HashMap本身还是实现了迭代器的功能。本文基于JDK1.8成员变量及常量HashMap是一个N
编码博客控
·
2020-09-14 12:23
容器
JAVA
JAVA
Java容器
——ArrayList(Java8 )源码解析
ArrayList是一种常用List类型实现,也是Java集合中的的常用类型,以遍历查询性能优异著称,继承关系如下:可见ArrayList实现了Cloneable,Serializable,RandomAcess和List接口,继承了AbstractList抽象类,简而言之,ArrayList是一个实现了可复制,可序列化,支持快速随机访问的List类型。这里最重要的是实现了List的接口,包括初始
qisong3
·
2020-09-14 12:50
Java
容器
Java8容器源码-目录
从今天开始,就要开始学习
Java容器
了。本专栏从了解到使用再到源码,详细深入地讲解
Java容器
(集合)。本专栏主要参考《ThinkInJava》一书,还有网上的一些技术文章。
潘威威
·
2020-09-14 12:17
Java8容器
Java8容器源码札记
java
容器
集合
源码
think-in-java
java容器
之LinkedList源码解析(jdk8)
一、LinkedList简介LinkedList的数据结构为双向链表结构,链表数据结构的特点是每个元素分配的空间不必连续,所以它的特点是插入和删除数据的效率非常高,但随即访问元素的效率很低,因为链表没有下标,所以只能通过遍历来访问元素。结构如下图所示。二、LinkedList类的注解在读源码之前,我们来看看LinkedList类上都注释了一些什么内容。1)LinkedList是List和Deque
pinchaozhao
·
2020-09-14 12:14
java源码分析
Java容器
类源码-LinkedList的最全的源码分析
一、概述我们都知道,在Java中容器类里面包含了Collections(单列集合)和Map(双列集合),而Collections中又包含了List(有序,元素可以重复)和Set(无序,元素不重复),而List中又包含了ArrayList、LinkedList和Vector(JDK1.2之后已经过时),所以ArrayList和LinkedList就作为了我们常用的List集合,它们都有共同点,都是线
Ryane_Lee
·
2020-09-14 12:36
#
1.Java源码
Java容器
类源码-Vector的最全的源码分析
一、概述我们都知道,在Java的Collections包含了List和Set,而List里面有ArrayList、LinkedList、还有Vector,对于很多Java初学者来说,前面两个比较常用,ArrayList查询效率比较高(底层是数组实现),而LinkedList的增删效率比较高(底层是双向链表实现)。那么Vector是什么呢?它和ArrayList、LinkedList一样,支持有序可
Ryane_Lee
·
2020-09-14 12:04
Java
#
1.Java源码
java容器
系列二(ArrayList和LinkedList源码梳理)
一,ArrayList参考博文:http://www.cnblogs.com/zhangyinhua/p/7687377.html##标题1,数组在讲ArrayList之前我们首先讲一下数据结构中的数组。毕竟ArrayList是基于数组实现的List。数组概述:数组中所有的元素都存储在操作系统分配的一个内存块中。通过使用特定元素的索引作为下标,可以在常数时间内访问元素。数组优点:访问元素快缺点:基
净心斋主
·
2020-09-14 12:30
java容器系列
Java容器
之HashMap源码解析(视频讲解)
内容简介:讲解HashMap的底层数据结果、处理逻辑和源码实现。首先通过画图模拟HashMap的数据结果和底层处理逻辑;然后解析put和get方法,印证模拟中的原理;通过解读源码,讲解单向链表转换成红黑树的条件,以及何时又从红黑树转换回单向链表;最后分析initialCapacity和loadFactor在HashMap中的作用,以及他们对性能的影响。视频地址:https://mp.weixin.
genie2014
·
2020-09-14 12:40
Java
java
算法
hashmap
程序设计
Java容器
源码分析——HashSet是如何保证元素的不可重复
一、前言HashSet的基本特点是元素不可重复,但是不能保证元素的顺序;同时也是不同步的,所以多线程常见会存在线程安全问题。在开发过程中,HashSet是一个不错的去重工具。那是具体的实现机制是怎样的呢?马上开始揭晓。二、源码解读特性HashSet继承了集合框架AbstractSet,保证了集合的基本特征,实现了接口Set包含了基本集合操作,实现了接口Cloneable支持克隆,实现了Serial
大叔是个唐僧肉
·
2020-09-14 12:53
Java源码分析
java
java容器
源码
http://www.cnblogs.com/tstd/tag/java%E5%AE%B9%E5%99%A8%E6%BA%90%E7%A0%81%E8%A7%A3%E6%9E%90/给jdk写注释系列之jdk1.6容器(13)-总结篇之Java集合与数据结构给jdk写注释系列之jdk1.6容器(12)-PriorityQueue源码解析给jdk写注释系列之jdk1.6容器(11)-Queue之Ar
shirley_pp
·
2020-09-14 12:59
java
【
Java容器
源码系列】TreeSet源码分析
TreeSet大致的结构和HashSet相似,具体可以看上篇HashSet源码分析,这里底层组合的是TreeMap,所以继承了TreeMapkey能够排序的功能,迭代的时候,也可以按照key的排序顺序进行迭代。而本篇就主要来看TreeSet复用TreeMap时同时使用的两种复用思路:TreeSet直接使用TreeMap的某些功能,自己包装成新的apiTreeSet定义自己想要的api,自己定义接口
A minor
·
2020-09-14 12:51
Java集合源码系列
java
【
Java容器
源码系列】jdk8和jdk7中集合类对比
1.List区别1.1ArrayList(改动小)ArrayList无参初始化时,Java7是直接初始化10的大小,Java8去掉了这个逻辑,初始化时是空数组,在第一次add时才开始按照10进行扩容,下图是源码的差异对比图:List其它方面java7和8并没有改动。2.Map区别2.1HashMap(改动大)和ArrayList一样,Java8中HashMap在无参构造器中,丢弃了Java7中直接
A minor
·
2020-09-14 12:51
Java集合源码系列
java
【
Java容器
源码系列】HashMap源码分析&死锁问题(JDK7)
上一节分析了JDK8中HashMap的结构和主要方法,这节就对比一下JDK7中的HashMap的实现1.put&addEntry-put()根据key计算hash值,然后根据hash得到具体槽点位置遍历当前槽点的链表如果发现相同key直接覆盖,返回oldValue没有相同key的节点,就将新节点尾插(addEntry)publicVput(Kkey,Vvalue){......//计算Hash值i
A minor
·
2020-09-14 12:51
Java集合源码系列
java
【
Java容器
源码系列】LinkedList源码分析
1.结构LinkedList继承关系,核心成员变量,主要构造函数:publicclassLinkedListextendsAbstractSequentialListimplementsList,Deque,Cloneable,java.io.Serializable{//Node,双向链表privatestaticclassNode{Eitem;//节点值Nodenext;//指向的下一个节点N
A minor
·
2020-09-14 12:20
Java集合源码系列
java
【
Java容器
源码系列】ArrayList源码分析
1.结构ArrayList继承关系,核心成员变量,主要构造函数:publicclassArrayListextendsAbstractListimplementsList,RandomAccess,Cloneable,java.io.Serializable{//默认数组大小10privatestaticfinalintDEFAULT_CAPACITY=10;//数组存放的容器privatesta
A minor
·
2020-09-14 12:20
Java集合源码系列
java
【
Java容器
源码系列】HashSet源码分析
看源码先看类注释上,我们可以得到的信息有:底层实现基于HashMap,所以迭代时不能保证按照插入顺序,或者其它顺序进行迭代;add、remove、contanins、size等方法的耗时性能,是不会随着数据量的增加而增加的,这个主要跟HashMap底层的数组数据结构有关,不管数据量多大,不考虑hash冲突的情况下,时间复杂度都是O(1);线程不安全的,如果需要安全请自行加锁,或者使用Collect
A minor
·
2020-09-14 12:20
Java集合源码系列
java
【
Java容器
源码系列】HashMap最详细万字源码分析(JDK8)
从HashMap的类注释中,我们可以得到如下信息:允许null值,不同于HashTable,是线程不安全的;loadfactor(负载因子)默认值是0.75,是均衡了时间和空间损耗算出来的值,较高的值会减少空间开销(扩容减少,数组大小增长速度变慢),但增加了查找成本(hash冲突增加,链表长度变长),不扩容的条件:数组容量>需要的数组大小/loadfactor;如果有很多数据需要储存到HashMa
A minor
·
2020-09-14 12:20
Java集合源码系列
java
Java容器
源码分析—迭代器
迭代器概述迭代器模式1、定义与结构2、迭代器实现3、适用情况Iterator迭代器与Iterable接口ListIterator1、简述2、与Iterator区别常见问题概述迭代器的好处是封装容器的内部实现细节,对于不同的集合,可以提供统一的遍历方式,简化客户端的访问和获取容器内的数据;迭代器模式1、定义与结构迭代器(Iterator)模式:提供一种方法访问一个容器(container)对象中的各
to_be_better_one
·
2020-09-14 12:26
Java容器
Iteraor
listIterator
【
Java容器
源码系列】集合应用总结:迭代器&批量操作&线程安全问题
下面列出了所有集合的类图:每个接口做的事情非常明确,比如Serializable,只负责序列化,Cloneable只负责拷贝,Map只负责定义Map的接口,整个图看起来虽然接口众多,但职责都很清晰;复杂功能通过接口的继承来实现,比如ArrayList通过实现了Serializable、Cloneable、RandomAccess、AbstractList、List等接口,从而拥有了序列化、拷贝、对
A minor
·
2020-09-14 12:44
Java集合源码系列
java
java容器
集合类
数据结构1.基础类型(Primitives)与封装类型(Wrappers)的区别在哪里集合框架1、HashMaphttp://zhangshixi.iteye.com/blog/672697http://www.importnew.com/7099.htmlhttps://tech.meituan.com/java-hashmap.htmlHashMap的工作原理是什么内部的数据结构是什么Hash
v54vYoung
·
2020-09-14 06:43
java
Java容器
中算法
1、算法本部分介绍在容器体系中的一些常规算法:这些算法常常封装到一些工具类中;l例如Collections,Arrays.2、求最大值//参数为接口:所有实现给接口的类的对象都可以作为参数传递进去publicstatic>Tmax(Collectioncoll){Iteratori=coll.iterator();//获取迭代器Tcandidate=i.next();//候选值while(i.ha
alex-zhou96
·
2020-09-14 01:29
Java基础整理
JavaSE(13)——Java集合总结
java集合总结1.概述
java容器
可分为两大类CollectionListArrayListLinkedListVector(了解即可,已过时)SetTreeSetHashSetLinkedHashSetMapHashMapLinkedHashMapTreeMapConcurrentHashMapHashTable
情迷IntelliJ IDEA
·
2020-09-13 22:45
java
java
总结Java开发面试常问的问题,持续更新中~
GitHub地址:github.com/zaiyunduan1…,如果对你有帮助欢迎Star数据库mysqlredisjavajava虚拟机java并发
java容器
java基础计算机网络数据结构与算法操作系统
weixin_33967071
·
2020-09-13 04:09
高效遍历
Java容器
通过本文,你可以更深入的学习Java语言中forEach语法的知识,以及它和C语言形式的for循环、SteamAPI的对比。简介Java程序员经常使用容器,比如ArrayList和HashSet。Java8中的lambda语法和steamingAPI可以让我们更方便的使用容器。大部分情况下,我们仅仅处理几千个元素,也不会去考虑性能问题。但是,在一些极端场景下,如果我们需要遍历上百万个元素,性能问题
fygu18
·
2020-09-13 00:41
面试必备:《Java 最常见 200+ 面试题全解析》(二)容器部分
目录一、Java基础部分Java基础部分二、容器部分18.
java容器
都有哪些?19.Collection和Collections有什么区别?20.List、Set、Map之间的区别是什么?
小黑爱上排骨
·
2020-09-12 23:36
Java面试题
『中级篇』docker之运行nginx跳转到本地的jar并配置https(番外篇)(80)
原文链接地址:『中级篇』docker之运行nginx跳转到本地的jar并配置https(番外篇)(80)真实的环境,一个1核2g内存,安装了mysql容器,
java容器
,nginx容器。
zhugeaming2018
·
2020-09-12 21:58
手把手docker
java容器
类------------Collections容器工具类解析(四)
•java.util.Collections类是操作容器的工具类,提供了一些静态方法实现了基于容器的一些常用算法–----voidsort(Listlist)根据元素的自然顺序对指定List列表按升序进行排序。List列表中的所有元素都必须实现Comparable接口。–----voidshuffle(Listlist)对List列表内的元素进行随机排列–----voidreverse(Listl
kyrin_云中鹤
·
2020-09-12 21:41
java
工具
java
list
collections
算法
Java容器
:(二)List接口_ArrayList_用法详解
List接口_ArrayList_用法详解1.ArrayList的定义2.ArrayList用法1.创建ArrayList集合对象2.add(Objectobj)添加元素3.查询集合中元素的个数4.查询集合是否为空5.addAll(Collectionc)添加所有元素6.根据对象进行删除7.根据索引删除8.删除两集合中相同的元素9.删除两集合中不同的元素10.判断元素在集合中是否存在11.判断集合
地球村公民
·
2020-09-12 20:15
Java基础深化与提高
java
远程面试蚂蚁金服,三面之后本以为石沉大海,没想到却被直接录取
蚂蚁金服面试(视频一面)
Java容器
有哪些?哪些是同步容器,哪些是并发容器?为什么Java要采用垃圾回收机制,而不采用C/C++的显式内存管理?一个线程的生命周期有哪几种状态?它们之间如何流转的?
JavaBUGa
·
2020-09-12 18:35
Java
面试
程序员
java
面试
编程语言
分布式
算法
面试大保健
Java容器
都有哪些?当一个对象被当作参数传递到一个方法后,此方法可改变这个对象的属性,并可返回变化后的结果,那么这里
申顺爱
·
2020-09-12 15:33
Java基础-复习07-集合
一.概述集合、数组都对多个数据进行存储操作的结构,称为
Java容器
集合解决了数组长度不可修改、元素增删改查效率低、不能满足无序不可重复元素等缺点Java集合分为Collection和Map两种体系Collection
codfishXY
·
2020-09-12 12:36
Java基础
蚂蚁花呗 三面题目:红黑树+并发容器+CAS+Solr+分布式+大数据
蚂蚁花呗一面(一个小时):
Java容器
有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理,注解原理?新生代分为几个区?
xiaojin21cen
·
2020-09-11 06:00
综合运用
面试
Java基础
蚂蚁花呗1-5面(高级):分布式+MySQL+HashMap+线程池+MQ+Redis
Java容器
有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理,注解原理?新生代分为几个区?使用什么算法
关注我学java
·
2020-09-11 02:48
Java
蚂蚁花呗4面技术题:分布式+大数据+MySQL+linux+红黑
蚂蚁花呗一面(一个小时):
Java容器
有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理,注解原理?
weixin_45919378
·
2020-09-10 23:47
蚂蚁花呗五面(高级):分布式+MySQL+HashMap+线程池+MQ+Redis
Java容器
有哪些?哪些是同步容器,哪些是并发容器?ArrayList和LinkedList的插入和访问的时间复杂度?java反射原理,注解原理?新生代分为几个区?使用什么算法
Java架构俱乐部
·
2020-09-10 23:15
程序员
面试
Jenkins自动化部署容器
上一篇文章《Dockerfile配置APM监控实现
Java容器
的性能监控》实现了在tomcat容器中部署APM监控,就着这个话题我们继续扩展一下如何自动化部署。
smooth-z
·
2020-09-10 23:35
#
测试环境
自动化构建
Docker与测试环境
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
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
其他