#研究JAVAAPI系列--ArrayList列表#

本文详细介绍ArrayList的基本操作,包括增删改查、克隆、列表大小调整及转换为数组等常见API使用方法,并附带示例代码帮助理解。

ArrayList:一个初始容量为10的列表,每次扩容默认增加0.5倍容量,但是有时候会造成容量浪费这时候能够调用trimToSize()调整容量为当前列表大小,此方法并未记录到下文,了解就好。ArrayList是不同步的(Vector是同步的),但速度较快,当然你可以包装ArrayList使其同步。;下面是常见API的使用:

package CollectionAPI

import java.util.ArrayList;

public class ArrayListAPI {
    
    //增删改add+remove+set
    public void test1(){
        ArrayList<Integer> al = new ArrayList<>();
        System.out.println("原始列表:"+al);
        System.out.println("----------------------");
        al.add(1);al.add(2);al.add(null);
        System.out.println("1.增加:"+al);
        System.out.println("2.删掉null:"+al.remove(null)+" 输出删除后的al:"+al);
        System.out.println("3.修改元素1变成10:"+al.set(1, 10)+" 输出修改后的al:"+al);
    }
    //查contain+get+indexOf(查询是否包含该元素/根据索引查询元素/根据元素查索引)
    public void test2(){
        ArrayList<Integer> al = new ArrayList<>();
        al.add(1);al.add(2);al.add(null);
        System.out.println("原始列表:"+al);
        System.out.println("----------------------");
        
        System.out.println("4.检查是否包含元素1:"+al.contains(1));
        System.out.println("5.获取指定索引2位置的元素:"+al.get(2));
        System.out.println("6.返回指定元素2的索引:"+al.indexOf(2));
    }
    //克隆clone(克隆返回的是Object,所以克隆只能复刻当前列表,后续列表怎么变化并不影响.)
    public void test3(){
        ArrayList<Integer> al = new ArrayList<>();
        al.add(1);al.add(2);al.add(null);
        System.out.println("原始列表:"+al);
        System.out.println("----------------------");

        Object al2 = al.clone();
        System.out.println("7.克隆当前列表:"+al2);
        al.add(4);
        System.out.println("8.al新增元素:"+al);
        System.out.println("9.al2不受影响的:"+al2);
    }
    //列表大小、转数组size+toArray
    public void test4(){
        ArrayList<Integer> al = new ArrayList<>();
        al.add(1);al.add(2);al.add(null);
        System.out.println("原始列表:"+al);
        System.out.println("----------------------");
        
        System.out.println("10.返回列表al的大小:"+al.size());
        System.out.println("11.ArrayList列表转换为Array数组:"+al.toArray());
    }
    
    
    public static void main(String[] args) {
        ArrayListAPI ala = new ArrayListAPI();
        System.out.println("****************测试1:*******************");
        ala.test1();
        System.out.println();
        
        System.out.println("****************测试2:*******************");
        ala.test2();
        System.out.println();

        System.out.println("****************测试3:*******************");
        ala.test3();
        System.out.println();

        System.out.println("****************测试4:*******************");
        ala.test4();
    }
}

结果

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值