public class MyArrayList<Integer> { private final int SIZE=10; private int size=0; public Integer arr[]; public MyArrayList(){ arr=(Integer[])new Object[SIZE]; } public void add(Integer ...
原创
2021-09-03 13:50:50
222阅读
前言这是带给大家的第一篇技术文章,也是所有的java开发人员肯定使用过的。因为相比较其它数据结构而言,无疑它是最简单的。所以今天放第一篇来给大家介绍。并自行实现一个简易版的ArrayList。本文借鉴jdk7与8实现,部分变量命名参考jdk命名,细节无法顾全,但大体思想是jdk的思想,做一个简化版来帮助大家理解。关注点不只是ArrayList,在任何集合中,都应关注以下几点:原理ArrayList
转载
2023-10-07 15:23:46
61阅读
List集合是我们平时常用的集合框架,List集合是有序的,在java中List接口主要有两个实现分别是ArrayList和LinkedList,其中ArrayList类主要是通过数组的方式实现的。因为ArrayList底层是通过数组的方式实现List集合,所以在访问集合中的数据时可以直接通过数组的下标访问,效率较高。由于在java中数组的大小必须在定义数组时确定并且不
转载
2023-10-05 22:48:18
61阅读
1.首先编写ExtList接口()package com.itmayiedu.list;public interface ExtList<E> { public void add(E object); public void add(int index, E object); public Object remove(int index); ...
原创
2021-07-14 14:16:38
135阅读
import javax.validation.constraints.NotNull;import java.util.*;import java.util.f
原创
2022-12-22 00:27:32
33阅读
单例模式是一种常用的设计模式,该模式提供了一种创建对象的方法,确保在程序中一个类最多只有一个实例。单例有什么用处?有一些对象其实我们只需要一个,比如线程池、缓存、对话框、处理偏好设置和注册表的对象、日志对象,充当打印机、显示等设备的驱动程序对象。其实,这类对象只能有一个实例,如果制造出来多个实例,就会导致许多问题,如:程序的行为异常、资源使用过量,或者是不一致的结果。Singleton通常用来代表
转载
2024-01-26 10:32:31
31阅读
1、自定义异常类
IllegalArgumentMyException类
package com.example.demo.collection;
/**
* @Description 自定义非法参数异常
* @Auther gf.x
* @Date 2020/5/24 15:38
*/
public class IllegalArgumentMyException extends
原创
2021-07-28 17:02:36
155阅读
1、创建、添加、tostring方法具体增加方法:1、创建默认大小为10的数组2、创
原创
2023-06-13 14:06:50
59阅读
手写ArrayList核心源码手写ArrayList核心源码ArrayList是Java中常用的数据结构,不光有ArrayList,还有LinkedList,HashMap,LinkedHashMap,HashSet,Queue,PriorityQueue等等,我们将手写这些常用的数据结构的核心源码,用尽量少的代码来揭示核心原理。下面我们来手写ArrayList的核心源码首先我们定义一个QArra
原创
2022-10-25 16:01:06
94阅读
手写ArrayList核心源码 ArrayList是Java中常用的数据结构,不光有ArrayList,还有LinkedList,HashMap,LinkedHashMap,HashSet,Queue,PriorityQueue等等,我们将手写这些常用的数据结构的核心...
转载
2021-07-02 16:57:00
92阅读
2评论
1、自定义异常类package com.example.demo.myCollection;/** * @Description 数组索引越界异常类 * @Auther gf.x * @Date 2020/5/13 19:09 */public class IndexOutOfBoundsMyException extends RuntimeException { private static final long serialVersionUID = -407752045512
原创
2021-07-28 17:41:54
348阅读
注:本文所有方法和示例基于jdk1.8简介ArrayList是我们开发中非常常用的数据存储容器之一,其底层是数组实现的,我们可以在集合中存储任意类型的数据,ArrayList是线程不安全的,非常适合用于对元素进行查找,效率非常高。线程安全性对ArrayList的操作一般分为两个步骤,改变位置(size)和操作元素(e)。所以这个过程在多线程的环境下是不能保证具有原子性的,因此ArrayList在多
原创
2021-05-07 23:43:58
916阅读
本节主要分析JDK提供
原创
2023-04-23 10:21:36
98阅读
ArrayList是我们开发中非常常用的数据存储容器之一,其底层是数组实现的。
原创
2021-08-10 10:09:09
52阅读
ArrayList是啥?ArrayList是一种变长的数组,它比数组来的更强大,你不需要考虑数组的下标
原创
2022-10-31 13:14:36
75阅读
ArrayList是啥?ArrayList是一种变长的数组,它比数组来的更强大,你不需要考虑数组的下标
原创
2022-10-31 13:29:06
114阅读
数组实现的,其封装的各种方法:Add、remove、get、set等,其本质就是对数组的基本操作。public class ArrayList<E> extends AbstractList<E>
implements List<E>, RandomAccess, Cloneable, java.io.Serializable &nb
转载
2023-08-31 19:21:33
59阅读
本文续接上一章ArrayList原理及使用,对ArrayList中的常用方法subList进行了剖析,从源码的角度对通过subList方法得到的集合和原集合有何关系,有何不同点,从而避免工作中遇到各种坑
上一章说了很多ArrayList相关的内容,但还有一块儿内容没说到,那就是subList方法。先看一段代码public static void test
转载
2024-05-30 11:58:33
77阅读
在使用java集合的时候,都需要使用Iterator。但是java集合中还有一个迭代器ListIterator,在使用List、ArrayList、LinkedList和Vector的时候可以使用。这两种迭代器有什么区别呢?下面我们详细分析。这里有一点需要明确的时候,迭代器指向的位置是元素之前的位置,如下图所示: &
转载
2023-07-04 14:42:17
145阅读
文章目录ArrayList中的方法一、add二、get和set1、get2、set三、toString四、remove其他总结 ArrayList中的方法以下内容是基于JDK 11的API整理的,对add、remove、get、set、toString方法在工具中查看了源码,剩下的罗列出了API中的方法便于速览。创建数组: 实例化data对象,并指定泛型类型ArrayList<Intege
转载
2023-07-06 14:24:18
71阅读