ArrayList

ArrayList

ArrayLsit是什么

  • 是Java中的一个动态数组,可以根据需要自动扩展大小
  • 它实现了List接口,可以存储不同类型的元素,并提供了一些有用的方法来操作元素。

为什么要用AarrayList

  • 使用ArrayList可以方便地存储和操作元素,因为它可以自动扩展大小
  • 提供了许多有用的方法来添加、删除、获取和修改元素。

常用方法

  • 包含Collection中的全部方法
  • 还有一些自己的的特有方法

常用的一些方法

  1. 添加元素的方法:
    • add(E e)//添加到末尾
    • add(int index, E element)//添加找指定下标
    • addAll(Collection<? extends E> c)//将集合中所有元素添加到另外一个集合
    • addAll(int index, Collection<? extends E> c)//指定下标开始添加另一集合的元素
  2. 删除元素的方法:
    • remove(Object o)//删除指定元素
    • remove(int index), //删除指定下标元素
    • removeAll(Collection<?> c)//删除指定集合元素
    • clear()//删除全部元素
  3. 获取元素的方法:
    • get(int index)//获取指定下标的元素
    • indexOf(Object o)//获取元素第一次出现的下标
    • lastIndexOf(Object o)//获取最后一次出现的下标
    • subList(int fromIndex, int toIndex)//获取指定下标范围内的元素 [起始下标,终止下标)
  4. 修改元素的方法:set(int index, E element)//修改指定下标的内容
  5. 判断元素是否存在的方法:
    • contains(Object o)//判断单个元素是否在集合中
    • containsAll(Collection<?> c)//判断整个集合是否包含在某集合中 (是不是其子集)
  6. 获取ArrayList的大小的方法:size()
  7. 判断ArrayList是否为空的方法:isEmpty()
  8. 转换为数组的方法:toArray()

代码示例

import java.util.ArrayList;

//List 继承自Collection接口
public class _ArrayList {
    public static void main(String[] args) {
        //ArrayList list=new ArrayList();创建一个ArrayList实例 即一个可变长度数组 不过没有指定数据类型
        //创建一个指定了类型的可变数组
        ArrayList<String> list_1=new ArrayList<>();//指定了类型的可变长度数组
        ArrayList<String > list_2=new ArrayList<>();
        // 这里的参数必须是包装类

        //------常用方法------
        //add() 向数组中添加元素
        list_1.add("Steve");
        list_1.add("Alex");
        System.out.println("list_1中内容:"+list_1);
        list_2.add("Hello");
        list_2.add("World");
        System.out.println("list_2中内容"+list_2);

        //size() 获取集合中元素个数
        System.out.println("list_1中元素个数为:"+list_1.size());
        System.out.println("list_2中元素个数为:"+list_2.size());

        //get(索引) 获取集合中指定索引的元素
        System.out.println("list_1中索引为1的元素为:"+list_1.get(1));

        //index(元素) 返回元素第一次在集合中出现的索引
        System.out.println("Alex在集合list_1中第一个出现时的索引为:"+list_1.indexOf("Alex"));
        //没有出现则返回-1

        //lastIndexOf(元素) 返回元素最后一次在集合中出现的索引
        System.out.println("Alex在集合list_1中最后个出现时的索引为:"+list_1.lastIndexOf("Alex"));
        //没有出现则返回-1

        //addALL() 将一个集合中的所有元素添加到另一个集合索引处(以该索引为起点)
        list_1.addAll(2,list_2);   //从将list_2中的元素添加到 list_1中 插入开始的索引位置为2
        System.out.println("插入list_2中元素之后 list_1中的内容"+list_1);
        /*执行的是插入操作 不会覆元素 且 插入位置不能越界
        *如果只被插入数组有两个元素 则插入位置只能到2
        */

        //subList(起始下标(含),终止下标(不含))返回指定集合指定下标范围内的元素
        System.out.println("下标范围为[0,3)的元素"+list_1.subList(0,3));//返回list_1中 从下标开始到下标2结束的元素
        //范围是前闭后开的 即(0,3) 实际是不包括下标3的 也就是 只去下标 为 0 1 2的元素 实践范围是[0,3)


    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值