ArrayList集合的使用

本文深入讲解了Java中ArrayList集合的特性与使用方法,包括泛型的定义、元素的添加、获取与删除,以及集合的尺寸获取。同时,探讨了如何处理基本类型与对象的存储,展示了通过自动装箱和拆箱机制实现的便利性。并通过实例演示了如何将对象和集合传入方法中进行操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

初步定义,以及add的使用

import java.util.ArrayList;
/**
 * 数组长度不可以发生改变
 * 但是ArrayList集合的长度是可以随意改变的
 *
 * ArrayList<E>,其中<E>代表泛型
 * 泛型:集合当中的所有元素都是统一类型
 * 注意:泛型只能是引用,不能是基本类型
 * */

public class PhoneUse {
    public static void main(String[] args){
        /**创建一个ArrayList集合,集合的名称是list,里面装的全都是String字符串类型数据*/
        ArrayList<String> list = new ArrayList<>();
        System.out.println(list);   //[]

        list.add("赵丽颖");
        list.add("迪丽热巴");
        list.add("古力娜扎");
        list.add("高圆圆");

        System.out.println(list);   //[赵丽颖, 迪丽热巴, 古力娜扎, 高圆圆]

    }
}

list.add("赵丽颖");

是把“赵丽颖”这个字符串的地址作为泛型传到集合中去
集合当中不能存储int\float等没有地址的基本类型

.
.

ArrayList当中的常用方法:

public boolean add(E e);

向集合当中添加元素,参数的类型和泛型一致。返回值代表添加是否成功。
.

public E get(int index);

从集合当中获取元素,参数是索引编号,返回值就是对应位置的元素。
.

public E remove(int index);

从集合当中删除元素,参数是索引编号,返回值是被删除掉的元素
.

public int size();

获取集合的尺寸长度,返回值是集合中包含的元素个数。
.
.

自动装、拆箱

集合中不能存储基本类型
如何解决?
将基本类型封装

ArrayList<Integer> listC = new ArrayList<>();
listC.add(100);
listC.add(200);
System.out.print(listC);	//[100,200]

.
其他包装符号
在这里插入图片描述
.
.

将对象传入集合中

        ArrayList<person> list = new ArrayList<>();
           /**写入对象名称*/
        person per1 = new person("迪丽热巴", 18);
        person per2 = new person("雷恩加尔", 28);
        person per3 = new person("内瑟斯", 138);

        list.add(per1);
        list.add(per2);
        list.add(per3);

        for(int i = 0; i<list.size(); i++){
            person per = list.get(i);
            System.out.println("名字是:" + per.getName() + "年龄是:" + per.getAge());
        }

.
.

将集合传入方法当中

        ArrayList<Integer> listB = new ArrayList<>();
        ArrayList<Integer> listS = new ArrayList<>();
        
        Biglist(listB);
        
        SetlistS(listB,listS);
        
    }

    public static void Biglist(ArrayList<Integer> listB){
        Random r = new Random();
        for(int i = 0; i<30; i++){
            listB.add(r.nextInt(100)+1);
        }
    }

    public static void SetlistS(ArrayList<Integer> listB,ArrayList<Integer> listS){
        for(int i = 0; i<listB.size(); i++){
            if(listB.get(i) % 2 == 0){ listS.add(listB.get(i));}
        }
    }

同时传入两个集合也可以

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值