Java中的ArrayList类常用方法和遍历

 更新时间:2022年02月28日 11:16:07   作者:一直千寻  
这篇文章主要介绍了Java中的ArrayList类常用方法和遍历,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

ArrayList类常用方法和遍历

 ArrayList类对于元素的操作,基本体现在——增、删、查。

常用的方法有

  • public boolean add(E e):将指定的元素添加到此集合的尾部。
  • public E remove(int index):移除此集合中指定位置上的元素。返回被删除的元素。
  • public E get(int index):返回此集合中指定位置上的元素。返回获取的元素。
  • public int size():返回此集合中的元素数。遍历集合时,可以控制索引范围,防止越界。
  • contains(object obj):判断是否含有指定元素
  • public E set(int index, String element):把此集合中指定索引的元素,改为新的元素

这些都是最基本的方法,操作非常简单,代码如下:

public class ArrayListDemo {
    public static void main(String[] args) {
        //创建集合对象
        ArrayList<String> list = new ArrayList<String>();
        //添加元素
        list.add("hello");
        list.add("world");
        list.add("java");
        //public E get(int index):返回指定索引处的元素
        System.out.println("get:"+list.get(0));
        System.out.println("get:"+list.get(1));
        System.out.println("get:"+list.get(2));
        //public int size():返回集合中的元素的个数
        System.out.println("size:"+list.size());
        //public E remove(int index):删除指定索引处的元素,返回被删除的元素
        System.out.println("remove:"+list.remove(0));
        //遍历输出
        for(int i = 0; i < list.size(); i++){
            System.out.println(list.get(i));
        }
    }
}

ArrayList类方法总结

关于ArrayList

ArrayList是集合框架List接口的实现类(数组实现)

List接口是一个有序的 Collection,使用此接口能够精确的控制每个元素插入的位置,能够通过索引(元素在List中位置,类似于数组的下标)来访问List中的元素,第一个元素的索引为 0,而且允许有相同的元素。List 接口存储一组不唯一,有序(插入顺序)的对象。

ArrayList实现了List的接口,实现了可变大小的数组,随机访问和遍历元素时,提供更好的性能。该类也是非同步的,在多线程的情况下不要使用。ArrayList 增长当前长度的50%,插入删除效率低。

常用方法总结

构建ArrayList

1.不初始化起容量

ArrayList al = new ArrayList();//默认容量为0,当数组容量满时数组会自动一当前数组容量的2倍扩容

2.初始化容量

ArrayList al = new ArrayList(3);//初始容量为3

3.以一个集合或数组初始化

ArrayList al = new ArrayList(a);//a为集合或数组

添加元素

//1.ArrayList名.add(object value)
ArrayList al = new ArrayList();
al.add("a");
//2.将元素插入到索引处(不过其有一定的限制性,必须在数组长度以内插入数组)
al.insert(int index,object value);

删除元素

al.Remove(object obj);//移除数组中的obj元素
al.RemoveAt(int index);//移除索引为index的数字元素
al.RemoveRange(int indext,int count);//移除从索引index开始,移除count个元素

查找元素

查找元素有Contains()、IndexOf()、LastIndexOf()3中方法

//boolean contains(Object o)
al.Contains(object obj);//查找数组中是否有obj元素,返回类型为boolean存在返回true;

IndexOf()有两个重载方法 起用法如下:

//int indexOf(Object o)
al.IndexOf(object obj);//从0开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,如果不存在,返回-1;
al.IndexOf(object obj, int startIndex); //从startIndex开始查找obj元素,只第一个obj元素,并返回起在数组中的位置,
al.IndexOf(object obj, int startIndex, int count); //从startIndex开始想后查找count个元素,如果存在obj元素,则返回其在数组中的位置

al.LastIndexOf()方法与IndexOf()用法相同,它也有两个重载,其不同的是,LastIndexOf(obj)是查找要obj最后出现的位置

获取元素

al.get(index);

获取ArrayList数组长度

al.size();

检查是否为空

//boolean isEmpty()
al.isEmpty();

遍历ArrayList

1.获取数组长度,循环遍历

for(int i = 0, i < al.size(); i++){
}

2.使用for-each循环

for(object e : al){
}

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • MyBatis如何实现流式查询的示例代码

    MyBatis如何实现流式查询的示例代码

    这篇文章主要介绍了MyBatis 如何实现流式查询的示例代码,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-04-04
  • Java获取时间差(天数差,小时差,分钟差)代码示例

    Java获取时间差(天数差,小时差,分钟差)代码示例

    这篇文章主要介绍了Java获取时间差(天数差,小时差,分钟差)代码示例,使用SimpleDateFormat来实现的相关代码,具有一定参考价值,需要的朋友可以了解下。
    2017-11-11
  • Spring初始化和销毁的实现方法

    Spring初始化和销毁的实现方法

    这篇文章主要介绍了Spring初始化和销毁的实现方法,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • springboot3集成mybatis-plus报sqlSession异常的问题解决

    springboot3集成mybatis-plus报sqlSession异常的问题解决

    springboot3已经发布正式版,但是在集成mybatis-plus最新版3.5.2的时候发现提示异常,本文就来介绍一下报sqlSession异常的问题解决,具有一定的参考价值,感兴趣的可以了解一下
    2024-02-02
  • 改变JAVA窗体属性的操作方法

    改变JAVA窗体属性的操作方法

    在本篇内容里小编给大家详细分析了关于改变JAVA窗体属性的操作方法和步骤,需要的朋友们学习下。
    2018-12-12
  • java+jsp+struts2实现发送邮件功能

    java+jsp+struts2实现发送邮件功能

    这篇文章主要为大家详细介绍了java+jsp+struts2实现发送邮件功能,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
    2017-03-03
  • SpringBoot启动流程SpringApplication准备阶段源码分析

    SpringBoot启动流程SpringApplication准备阶段源码分析

    这篇文章主要为大家介绍了SpringBoot启动流程SpringApplication准备阶段源码分析,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-04-04
  • scala 读取txt文件的方法示例

    scala 读取txt文件的方法示例

    这篇文章主要介绍了scala 读取txt文件的方法示例,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06
  • Caused by: java.lang.ClassNotFoundException: org.apache.commons.collections.Transformer异常

    Caused by: java.lang.ClassNotFoundException: org.apache.comm

    这篇文章主要介绍了Caused by: java.lang.ClassNotFoundException: org.objectweb.asm.Type异常,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2020-07-07
  • springboot整合nacos,如何读取nacos配置文件

    springboot整合nacos,如何读取nacos配置文件

    这篇文章主要介绍了springboot整合nacos,如何读取nacos配置文件问题,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-11-11

最新评论