我们查看Collection接口的hierarchy时候,可以看到AbstractCollection<E>这样一个抽象类,它实现了Collection接口的部分方法,Collection集合系列的各个集合类都继承于该抽象类。我们来看看这个类: public abstract class AbstractCollection<E> implements Collect
转载
2024-01-17 10:14:08
25阅读
对于java的集合类,首先看张图 这张图大致描绘出了java集合类的总览,两个体系,一个Collection集合体系一个Map集合体系。在说集合类之前,先说说Iterable这个接口,这个接口在jdk1.8之前,里面只有一个方法Iterator<T> iterator(),即返回一个T类型的迭代器,在1.8增加了两个default修饰的方法default void forE
转载
2023-07-20 17:12:46
71阅读
最近在整理JAVA 基础知识,从jdk源码入手,今天就jdk中 java.util包下集合类进行理解先看图从类图结构可以了解 java.util包下的2个大类: 1、Collecton:可以理解为主要存放的是单个对象 2、Map:可以理解为主要存储key-value类型的对象一、Collection Collection继承了Iterate接口,Iterate用于集合内迭代器抽象接口,其子类
转载
2023-08-01 17:46:23
41阅读
关于java集合的练习题及答案关于java集合的练习题及答案集合框架Key Point* Collection 接口、Set 接口、List 接口基本操作* List 接口及其实现类* Set 接口及其实现类* 迭代遍历* Hash 算法与hashCode 方法* Comparable 接口* Map 接口及其实现类* 遍历Map* 泛型练习1. 填空Collection 接口的特点是元素是对象;
转载
2023-07-14 23:14:08
73阅读
今天学习Java集合类中的一个抽象类,AbstractList。初识AbstractListAbstractList 是一个抽象类,实现了List接口,是隶属于Java集合框架中的 根接口 Collection 的分支,由其衍生的很多子类因为拥有强大的容器性能而被广泛应用,例如我们最为熟悉的ArrayList,这是它的类继承结构图:特殊方法AbstractList 虽然是抽象类,但其内部只有一个抽
原创
2021-05-19 22:00:43
187阅读
一、Arrays.sort()数组排序Java Arrays中提供了对所有类型的排序。其中主要分为Primitive(8种基本类型)和Object两大类。 基本类型:采用调优的快速排序; 对象类型:采用改进的归并排序。1、对于基本类型源码分析如下(以int[]为例): Java对Primitive(int,float等原型数据)数组采用快速排序,对Object对象数组采用归并排序。对这一区别...
原创
2021-07-19 13:44:49
84阅读
引言今天学习一个Java集合的一个抽象类 AbstractMap ,AbstractMap 是Map接口的 实现类之一,也是HashMap、TreeMap、ConcurrentHashMap 等的父类,它提供了Map 接口中方法的基本实现(关于Map接口有疑惑的同学可参考 Java集合类根接口:Collection 和 Map)源码解析因为 AbstractMap 类是实现Map接口的抽象类,所
原创
2021-05-19 22:00:03
297阅读
前言今天继续学习关于Map家族的另一个类 LinkedHashMap 。先说明一下,LinkedHashMap 是继承于 HashMap 的,所以本文只针对 LinkedHashMap 的特性学习,跟HashMap 相关的一些特性就不做进一步的解析了,大家有疑惑的可以看之前的博文。深入解析LinkedHashMap的基本结构首先,看一下LinkedHashMap类的定义结构:public clas
原创
2021-05-20 15:30:28
355阅读
一、Collection接口 从《Java集合:整体结构》一文中我们知道所有的List和Set都继承自Collection接口,该接口类提供了集合最基本的方法,虽然List接口和Set等都有一些自己独有的方法,但是基本的操作类似。我们先看下Collection接口提供的方法: 总体上可以将Colle
转载
2021-12-16 13:47:20
66阅读
目录前言源码解析基本成员变量添加元素查询元素修改元素删除元素为什么用 "transient" 修饰数组变量总结前言今天学习一个Java集合类使用最多的类 ArrayList , ArrayList 继承了 AbstractList,并实现了List 和 RandomAccess 等接口,public class ArrayList<E> extends AbstractList<
原创
2021-04-15 18:21:12
284阅读
引言之前的文章我们学习了一个集合类 ArrayList,今天讲它的一个兄弟 Vector。为什么说是它兄弟呢?因为从容器的构造来说,Vector 简直就是 ArrayList 的翻版,也是基于数组的数据结构,不同的是,Vector的每个方法都加了 synchronized 修饰符,是线程安全的。类声明用idea打开 Vector 的源码,不难发现,它的类声明跟 ArrayList 一模一样,都是继
原创
2021-04-15 18:21:58
216阅读
ArrayList继承自AbstractList抽象类,实现了List接口。 public class ArrayList<E> extends AbstractList<E>
implements List
原创
2016-07-20 15:25:54
1024阅读
(本文基于JDK1.8)Collection.java定义在java.util包中Collection接口定义与规范了作为一个集合类应该具备哪些基本能力(功能),Java集合框架的名称由来就跟Collection接口有关!Collection继承了Iterable接口,Iterable接口则是定义了作为迭代器具备的能力以下是Collection接口中定义的抽象方法与default方法 0
转载
2024-02-20 21:22:47
21阅读
HashMap 在 java 里用于存储 Key-Value 结构的数据,它允许 key 和 value 为 null,是一种无序并且线程不安全的集合对象。HashMap 基于 hashing 的原理,内部使用的是数组加链表的结构,在 JDK 1.8 上对查询性能进行优化,链表长度大于一定值过后链表将重构为红黑树。本文对 HashMap 源码进行分析,了解其实现原理。
原创
2022-01-10 15:37:26
124阅读
# Java集合源码解析
Java集合是用于存储和操作数据的工具,是开发中常用的数据结构和算法之一。在Java中,集合框架提供了一组接口和类,用于存储和操作不同类型的数据。本文将对Java集合的源码进行解析,并介绍常用的集合类及其使用方法。
## 1. 集合框架概述
Java集合框架是Java编程语言的一部分,它提供了一组接口和类,用于存储和操作数据。集合框架主要包括以下几个组件:
- 接
原创
2023-08-09 07:15:35
38阅读
# Java源码集合
Java是一种非常流行的编程语言,广泛应用于各种软件开发领域。在Java中,集合是一种非常重要的数据结构,用于存储和操作一组对象。Java提供了丰富的集合框架,包括List、Set、Map等不同类型的集合类。这些集合类提供了各种方法来操作和处理集合中的元素。
## 集合框架的概述
Java集合框架(Collection Framework)是Java提供的用于存储和操作
原创
2023-08-04 07:09:30
65阅读
说集合之前,我们先说一个小例子,假设某公司有五个人喜欢打篮球,五个人喜欢打游戏,问即打游戏有打篮球的人都有哪些?play_basketball = ['a','b','c','d','e']
play_game = ['a','b','c','f','g']
both_play=[]
for name in play_basketball:
if name in play_game:
both_p
ArrayList是我们经常使用到的一个集合类,通过查看其底层源码实现,有利于我们更好的掌握与使用。ArrayList不算多,但是也不算少,挨个看下去也挺费时费力的。所以呢,我打算循序渐进着来,比如这一篇就先看看ArrayList的属性,以及一些常用的方法,例如增、删、改、查。一口吃不成胖子,任重而道远~1、ArrayList的结构下面是在IDEA里查看到的ArrayList的UML图:从图中我们
在JDK1.5之前,Java有两种方式定义新类型: 类和接口。 对于大部分面向对象编程来说,这两种方法看起来似乎足够了。但是当我们需要限定某个类型只能出现特点的值的时候,我们就需要做很多工作来完成这种限定,而且还有可能以为设计问题而导致无法完美的作出限制或限制过度是某些应有的功能无法完成。为此,sun公司在jdk1.5是增了Enum来解决这个问题。下面我们看一下Enum的源码: package j
转载
2023-09-01 11:37:22
25阅读
一、java集合系列(ArrayList、LinkedList)
java的集合主要分为List列表、Set集合、工具类(Iterator迭代器、Enumeration枚举类、Arrays和Collections )
java中集合类的关系图
转载
2023-06-21 19:26:34
210阅读