ArrayList使用介绍

1. ArrayList的特点

集合中的List是一种有序的,可重复的集合,ArrayList是基于可动态扩展的数组实现了List的接口。因为是数组所以可以通过下标来访问集合中的元素,对随机访问有很高的效率。但在两个元素之间新增元素或删除元素则效率较低。

2.ArrayList的主要方法

  • 创建ArrayList对象
List<String> list = new ArrayList<>();

注:List中的String代表List中的元素类型是String

  • add(E e)方法向List中添加元素, E是泛型
  • add(int index, E e)方法向List指定位置插入元素
  • get(int index)获取指定位置的元素
  • boolean contains(Object o)检查List中是否包含指定元素,包含返回true, 否则返回false
  • size()方法返回List中元素的数量
  • clear()清空List,删除所有元素
  • isEmpty()检查List是否为空,为空返回true,否则返回false。
  • indexOf(Object o)获取元素在List中的位置,元素不存在时返回-1。
package collect;

import java.util.ArrayList;
import java.util.List;

/**
 * [简要描述]: ArrayList的主要方法
 * [详细描述]:
 *
 * @author Smalight Lv
 * @version 1.0, 2021/5/3 07:53
 * @since JDK 1.8
 */
public class ArrayListTest {
    public static void main(String[] args) {

        /*
         * 声明List变量,并创建一个ArrayList对象
         * List<String>中的String代表List中的元素是String类的对象
         */
        List<String> list = new ArrayList<>();

        //添加元素,把参数添加到List中
        list.add("刘备");
        list.add("关羽");
        list.add("张飞");

        System.out.println("List的大小是:" + list.size());
        System.out.println(list);

        String str = list.get(0);
        System.out.println("第0个元素是:" + str);

        int index = list.indexOf("张飞");
        System.out.println("张飞的位置:" + index);

        //将元素"诸葛亮"添加到下标为1的位置(下标从零开始)
        list.add(1, "诸葛亮");
        System.out.println("List的大小是:" + list.size());
        System.out.println(list);

        boolean contains = list.contains("诸葛亮");
        System.out.println("是否包含\"诸葛亮\":" + contains);
        contains = list.contains("曹操");
        System.out.println("是否包含\"曹操\":" + contains);

        //按位置删除元素
        list.remove(1);
        System.out.println("List的大小是:" + list.size());
        System.out.println(list);
        //按元素值删除元素
        list.remove("张飞");
        System.out.println("List的大小是:" + list.size());
        System.out.println(list);

        boolean isEmpty = list.isEmpty();
        System.out.println("List是否为空:" + isEmpty);

        //清空List
        list.clear();
        System.out.println("List的大小是:" + list.size());
        System.out.println(list);
        isEmpty = list.isEmpty();
        System.out.println("List是否为空:" + isEmpty);

    }

}

运行结果:

List的大小是:3
[刘备, 关羽, 张飞]0个元素是:刘备
张飞的位置:2
List的大小是:4
[刘备, 诸葛亮, 关羽, 张飞]
是否包含"诸葛亮":true
是否包含"曹操":false
List的大小是:3
[刘备, 关羽, 张飞]
List的大小是:2
[刘备, 关羽]
List是否为空:false
List的大小是:0
[]
List是否为空:true

3.ArrayList的遍历

编历是指将集合中的所有元素都访问一遍。

3.1 使用for循环遍历

package collect;

import java.util.ArrayList;
import java.util.List;

/**
 * [简要描述]:ArrayList遍历
 * [详细描述]:
 *
 * @author Smalight Lv
 * @version 1.0, 2021/5/4 10:29
 * @since JDK 1.8
 */
public class ArrayListTraversal {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();

        list.add("刘备");
        list.add("关羽");
        list.add("张飞");

        for(int i = 0; i < list.size(); i++){
            String str = list.get(i);
            System.out.println(str);
        }
    }
}

运行结果:

刘备
关羽
张飞

3.2 使用增强的for循环遍历

package collect;


import java.util.ArrayList;
import java.util.List;

/**
 * [简要描述]:增加for循环遍历ArrayList
 * [详细描述]:
 *
 * @author Smalight Lv
 * @version 1.0, 2021/5/4 10:39
 * @since JDK 1.8
 */
public class ArrayListT2 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();

        list.add("刘备");
        list.add("关羽");
        list.add("张飞");

        for (String item:list) {
            System.out.println(item);
        }
        
    }
}

运行结果:

刘备
关羽
张飞

3.3 使用迭代器(Integor)遍历

package collect;

import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;

/**
 * [简要描述]:使用迭代器遍历ArrayList
 * [详细描述]:
 *
 * @author Smalight Lv
 * @version 1.0, 2021/5/4 10:44
 * @since JDK 1.8
 */
public class ArrayListT3 {
    public static void main(String[] args) {
        List<String> list = new ArrayList<>();

        list.add("刘备");
        list.add("关羽");
        list.add("张飞");

        Iterator<String> iterator = list.iterator();
        while(iterator.hasNext()){
            String str = iterator.next();
            System.out.println(str);
        }

    }
}

运行结果:

刘备
关羽
张飞
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
`ArrayList` 是一个常用的动态数组类,它提供了一种便捷的方法来管理对象集合。它是 Java 中的一个类,可以存储一组对象,并且可以随时动态调整其大小。`ArrayList` 实现了 `List` 接口,因此它具有 `List` 的所有功能,包括添加、删除、获取元素等。 以下是使用 `ArrayList` 的一些基本操作: ### 创建一个 ArrayList 使用 `ArrayList` 类创建一个新的 ArrayList 对象,可以指定初始容量大小(可选): ```java ArrayList<String> arrayList = new ArrayList<String>(); // 创建一个空的 ArrayList 对象 ArrayList<Integer> arrayList = new ArrayList<Integer>(10); // 创建一个容量为 10 的 ArrayList 对象 ``` ### 添加元素到 ArrayList 使用 `add()` 方法向 ArrayList 中添加一个元素: ```java ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("apple"); // 添加一个字符串 "apple" arrayList.add("banana"); // 添加一个字符串 "banana" ``` ### 获取 ArrayList 中的元素 可以使用 `get()` 方法从 ArrayList 中获取一个元素: ```java ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("apple"); arrayList.add("banana"); String fruit = arrayList.get(0); // 获取 ArrayList 中第一个元素 "apple" ``` ### 修改 ArrayList 中的元素 可以使用 `set()` 方法来修改 ArrayList 中的元素: ```java ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("apple"); arrayList.add("banana"); arrayList.set(1, "orange"); // 将 ArrayList 中的第二个元素修改为 "orange" ``` ### 删除 ArrayList 中的元素 使用 `remove()` 方法来删除 ArrayList 中的元素: ```java ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("apple"); arrayList.add("banana"); arrayList.remove(0); // 删除 ArrayList 中的第一个元素 "apple" ``` ### 遍历 ArrayList 使用 `for` 循环来遍历 ArrayList: ```java ArrayList<String> arrayList = new ArrayList<String>(); arrayList.add("apple"); arrayList.add("banana"); for (String fruit : arrayList) { System.out.println(fruit); } ``` 这将输出: ``` apple banana ``` 以上是 `ArrayList` 的一些基本操作,可以使用它来管理各种类型的对象集合

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

小亮点科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值