java ArrayList集合

Wesley13
• 阅读 717

ArrayList集合是程序中最常见的一种集合,它属于引用数据类型(类)。在ArrayList内部封装了一个长度可变的数组,当存入的元素超过数组长度时,ArrayList会在内存中分配一个更大的数组来存储这些元素,因此可以将ArrayList集合看作一个长度可变的数组。

集合的创建格式

导包:import java.util.ArrayList;

创建对象:与其他普通的引用数据类型创建方式完全相同,但是要指定容器中存储的数据类型:

ArrayList<要存储元素的数据类型> 变量名 = new ArrayList<要存储元素的数据类型>();

l 集合中存储的元素,只能为<>括号中指定的数据类型元素;

l “<要存储元素的数据类型>”中的数据类型必须是引用数据类型,不能是基本数据类型;

下面给出8种基本数据类型所对应的引用数据类型表示形式:

基本数据类型

对应的引用数据类型表示形式

byte

Byte

short

Short

I****nt

Integer

long

Long

float

Float

double

Double

char

Character

boolean

Boolean

下面给出8种基本数据类型所对应的引用数据类型表示形式:

我们通过举几个例子,来明确集合的创建方式:

l 存储String类型的元素

ArrayList list = new ArrayList();

l 存储int类型的数据

ArrayList list = new ArrayList();

l 存储Phone类型的数据

ArrayList list = new ArrayList();

集合常用的方法

方法声明

功能描述

boolean add(Object obj)

将指定元素obj追加到集合的末尾

Object get(int index)

返回集合中指定位置上的元素

int size****()

返回集合中的元素个数

方法声明

功能描述

boolean add(int index,  Object obj)

将指定元素obj插入到集合中指定的位置

Object remove(int index)

从集合中删除指定index处的元素,返回该元素

void clear()

清空集合中所有元素

Object set(int index, Object obj)

用指定元素obj替代集合中指定位置上的元素

点赞
收藏
评论区
推荐文章
待兔 待兔
4个月前
手写Java HashMap源码
HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程HashMap的使用教程22
Wesley13 Wesley13
3年前
java几个类的简单使用
RandomRandom类用来创建一个新的随机数生成器。对象数组ArrayList集合的长度是可以随意改变的。ArrayList<E这个<E代表泛型泛型:装在集合当中的所有元素,全部都是统一的类型。泛型只能是引用类型,不能使用基本元素。importjava.util.ArrayList;
Chase620 Chase620
3年前
ArrayList底层
一、ArrayList集合底层数据结构1.ArrayList集合介绍List集合的可调整大小数组实现。2.数组结构介绍增删快:每次增加删除元素,都需要更改数组长度、拷贝以及移除元素位置。查询快:由于数组在内存中是一块连续空间,因此可以根据地址索引的方式快速获
说说ArrayList的扩容机制
ArrayList是List接口的实现类,它是支持根据需要而动态增长的数组。java中标准数组是定长的,在数组被创建之后,它们不能被加长或缩短。这就意味着在创建数组时需要知道数组的所需长度,但有时我们需要动态程序中获取数组长度。ArrayList就是为此而生的,但是它不是线程安全的,外ArrayList按照插入的顺序来存放数据①ArrayList扩容发生
Stella981 Stella981
3年前
List接口(动态数组)
List接口(动态数组)List集合类中元素_有序且可重复_ArrayList(重要)作为List接口的主要实现类线程不安全的,效率高底层使用Object\\elementData数组存储ArrayList的源码分析jdk7
Wesley13 Wesley13
3年前
Java 集合类
为什么使用集合数组长度是固定,如果要改变数组的长度需要创建新的数组将旧数组里面的元素拷贝过去,使用起来不方便。java给开发者提供了一些集合类,能够存储任意长度的对象,长度可以随着元素的增加而增加,随着元素的减少而减少,使用起来方便一些。数组和集合的区别区别1:数组既可以存储基本数据类型,又可以存储引用数据类型,基本数据类
Wesley13 Wesley13
3年前
Java集合ArrayList源代码详细解析
一、ArrayList简介  ArrayList是可以动态增长和缩减的索引序列,它是基于数组实现的List类。  该类封装了一个动态再分配的Object\\数组,每一个类对象都有一个capacity属性,表示它们所封装的Object\\数组的长度,当向ArrayList中添加元素时,该属性值会自动增加。如果想ArrayList中添加大
Stella981 Stella981
3年前
ArrayList源码分析(JDK1.8)
概述ArrayList底层是基于 数组实现的,并且支持 动态扩容 的动态数组(变长的集合类)。ArrayList允许空值和重复的元素,当向ArrayList中添加元素数量大于其底层数组容量时,会通过 扩容机制 重新生成一个容量更大的数组。另外,由于ArrayList底层数据结构是数组,所以保证了在O(1)复杂度下完成随机查
Wesley13 Wesley13
3年前
.Net转Java自学之路—基础巩固篇十三(集合)
集合:集合是用于存储对象的一个工具。  集合与数组的特点    相同点:都是一个容器    不同点:      集合:可以存储对象,只能存储对象,集合长度可变。      数组:可以存储对象,也可以存储基本数据类型,数组长度固定。  容器对象有很多种,通过内部的数据结构来区分,数据结构就是一种数据存储方式。  在不断
Wesley13 Wesley13
3年前
Java集合笔记
1.1集合概述在前面基础班我们已经学习过并使用过集合ArrayList<E,那么集合到底是什么呢?集合:集合是java中提供的一种容器,可以用来存储多个数据。集合和数组既然都是容器,它们有啥区别呢?数组的长度是固定的。集合的长度是可变的。数组中存储的是同一类型的元素,可以存储基本数据类