ArrayList 原理分析| 学习笔记

简介: 快速学习 ArrayList 原理分析。

开发者学堂课程【Java面试疑难点串讲1:面试技巧及语言基础:ArrayList 原理分析】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/24/detail/478


ArrayList 原理分析


内容介绍

1. ArrayList 简介

2. ArrayList 使用范例


ArrayList 简介

对于类集里面已经强调了,使用最多的就是一个 ArrayList,但是使用 ArrayList 之前往往需要一些约定,ArrayList 线性复杂度是1,可以直接通过索引讲行访问。

实际上这个过程和数组是非常相似的。

ArrayList 在整个的使用过程之中如果要想高效操作,那么最好设置一个数组的大小。


ArrayList 使用范例:

import java.util.ArrayList;import java.util.List;
public class TestDemo {
public static void main( string[]args ) {
List all = new ArrayList(2);
all.add( "hello") ;
all.add( "world" ) ;
system.out.println(all);
}
}

在个数固定的情况下,ArrayList 里面避免了重复开辟空间的问题,所以当确定数据个数的时候,就使用 ArrayList,而如果不确定的时候就使用 LinkedList(链表实现)。

而 ArrayList 最底层的原理就是一个数组的动态操作。


            </div>
相关文章
|
索引
源码分析系列教程(11) - 手写Map框架(基于LinkedList)
源码分析系列教程(11) - 手写Map框架(基于LinkedList)
33 0
|
4月前
|
设计模式 并行计算 安全
Java面试题: 如何使用装饰器模式来增强ConcurrentHashMap的功能?在什么情况下应该使用CopyOnWriteArrayList而不是ArrayList?
Java面试题: 如何使用装饰器模式来增强ConcurrentHashMap的功能?在什么情况下应该使用CopyOnWriteArrayList而不是ArrayList?
32 0
|
6月前
ArrayList源码解读
ArrayList源码解读
23 1
|
6月前
|
存储 Java 索引
深入学习Java集合之ArrayList的实现原理
深入学习Java集合之ArrayList的实现原理
58 0
|
存储 Java 索引
ArrayList源码分析
ArrayList源码分析
|
存储 Java 程序员
ArrayList 的底层原理
ArrayList 是 Java 中常用的动态数组实现,它的底层是基于数组实现的。当创建一个 ArrayList 对象时,实际上是创建了一个 Object 类型的数组,初始容量为 10。当添加元素时,如果数组已满,ArrayList 会自动扩容,它会创建一个新的数组,并将原数组中的元素复制到新数组中。
941 0
ArrayList 的底层原理
|
存储 Java 容器
一文带你进行ArrayList 源码分析
一文带你进行ArrayList 源码分析
10891 1
|
存储 Java 索引
10 java集合-ArrayList基本使用
集合概述 集合,长度可变的容器
100 0
|
缓存 C++
【面试:基础篇07:ArrayList与LinkedList源码分析及其性能对比】
【面试:基础篇07:ArrayList与LinkedList源码分析及其性能对比】
138 1
|
存储 缓存 Java
java读源码 之 list源码分析(ArrayList)---JDK1.8
java读源码 之 list源码分析(ArrayList)---JDK1.8
74 0