ArrayList

集合基础

集合类的特点:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变,

集合类有很多,现在学的是:ArrayList

ArrayList<E>:

                        · 可调整大小的数组实现

                        · <E>:是一种特殊的数据类型,泛型

怎么用呢?

                        在出现E的地方我们使用引用数据类型替换即可

                        举例:ArrayList<String> , ArrayList<Student>

ArrayList构造方法和添加方法

方法名说明
pubilc ArrayList( )创建一个空的集合对象
public boolean add(E e)将指定的元素追加到此集合的末尾
public void add(int index,E element)在此集合中的指定位置插入指定的元素

ArrayList集合常用方法

方法名说明
public boolean remove(Object o)删除指定的元素,返回删除是否成功
public E remove(int index)删除指定索引处的元素,返回被删除的元素
public E set(int index , E element)修改指定索引处的元素,返回被修改的元素
public E get(int index)返回指定索引处的元素
public int size( )返回集合中的元素个数

### Java `ArrayList` 使用指南 #### 创建 `ArrayList` 创建一个 `ArrayList` 可以通过调用其无参构造函数完成。这使得初始化一个能够存储特定类型对象的动态数组变得简单。 ```java ArrayList<String> list = new ArrayList<>(); ``` 此代码片段展示了如何声明并实例化一个新的字符串类型的 `ArrayList` 对象[^1]。 #### 数组转 `ArrayList` 对于已有数据存在于数组中的情况,Java 提供了一个便捷的方式将这些固定大小的数据结构转换成更灵活的 `ArrayList` 类型: ```java String[] array = {"apple", "banana", "orange"}; ArrayList<String> arrayListFromArr = new ArrayList<>(Arrays.asList(array)); ``` 这段代码先定义了一个字符串数组,接着利用 `Arrays.asList()` 方法配合 `ArrayList` 构造器完成了从数组到 `ArrayList` 的转变[^2]。 #### 多线程环境下的同步处理 由于标准的 `ArrayList` 不支持多线程间的并发访问,在需要共享同一个列表的情况下应当考虑对其进行同步保护。可以通过 `Collections.synchronizedList()` 函数来获取经过同步增强后的版本: ```java List<String> synchronizedList = Collections.synchronizedList(new ArrayList<>(list)); ``` 上述语句返回的是被同步过的 `List` 接口实现类的对象,从而确保了在多个线程间的安全性[^3]。 #### 基础操作演示 下面是一些常见的针对 `ArrayList` 进行的操作示例,包括添加元素、移除指定位置上的项以及遍历整个集合等动作。 - **增加新成员** ```java list.add("grape"); ``` - **删除某个索引处的内容** ```java int indexToRemove = 0; String removedItem = list.remove(indexToRemove); System.out.println("Removed item was: " + removedItem); ``` - **迭代打印所有条目** ```java for (String fruit : list) { System.out.println(fruit); } ``` 以上就是有关于 `ArrayList` 的一些基础知识点介绍及其实际应用案例说明。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值