Java | ArrayList 语法

        ArrayList 类是一个可以动态修改的数组,与普通数组的区别就是它是没有固定大小的限制,我们可以添加或删除元素。ArrayList 继承了 AbstractList ,并实现了 List 接口。

1、创建  ArrayList<type> = new ArrayList<>()

// 创建arraylist  ArrayList<type> = new ArrayList<>()
        ArrayList<String> sites = new ArrayList<>();

2、添加元素 arraylist.add(element)

 // 添加元素 arraylist.add(element)
        sites.add("A");
        sites.add("B");
        sites.add("C");
        sites.add("D");

3、访问所有元素 arraylistName

// 访问 所有元素 arraylistName
        System.out.println(sites);

4、访问指定元素 arraylist.get(index)

// 访问 指定元素 arraylist.get(index)
        System.out.println(sites.get(0));

5、修改指定元素 arraylist.set(index,element)

// 修改 指定元素 arraylist.set(index,element)
        sites.set(3,"E");
        System.out.println(sites);

6、删除 指定元素 arraylist.remove(index)

// 删除 指定元素 arraylist.remove(index)
        sites.remove(3);
        System.out.println(sites);

7、判断元素是否在arraylist中 arraylist.contains(element)

// 判断元素是否在arraylist中 arraylist.contains(element)
        System.out.println(sites.contains("A"));
        System.out.println(sites.contains("E"));

8、返回arraylist中元素的索引值 arraylist.indexOf(element)

// 返回arraylist中元素的索引值 arraylist.indexOf(element)
        System.out.println(sites.indexOf("A"));
        System.out.println(sites.indexOf("E"));

9、复制 arraylist arraylist.clone()

// 复制 arraylist arraylist.clone()
        ArrayList<String> cloneSites = (ArrayList<String>)sites.clone();
        System.out.println("浅拷贝 ArrayList: " + cloneSites);

        //拓展:
        // 浅拷贝只复制指向某个对象的指针,而不复制对象本身,新旧对象还是共享同一块内存, 所以如果其中一个对象改变了这个地址,就会影响到另一个对象。。
        // 浅拷贝对应的就是深拷贝,深拷贝是将一个对象从内存中完整的拷贝一份出来,从堆内存中开辟一个新的区域存放新对象,且修改新对象不会影响原对象。

10、把arraylist的所有元素加入到arraylist2中  arraylist2.addAll(arraylist)

// 把arraylist的所有元素加入到arraylist2中 arraylist2.addAll(arraylist)
        ArrayList<String> sites2 = new ArrayList<>();
        sites2.addAll(sites);
        System.out.println(sites2);

11、将arraylist转换为数组arr arraylist.toArray(T[] arr)

// 将arraylist转换为数组arr   arraylist.toArray(T[] arr)
        String[] array = new String[sites.size()];
        sites.toArray(array);
        System.out.print("Array: ");
        for(String item:array)
            System.out.print(item+", ");

12、将arraylist转换为字符串 arraylist.toString()

// 将arraylist转换为字符串 arraylist.toString()
        sites.toString();
        String string = sites.toString();
        System.out.println("\nString: " + string);

13、 计算大小 arraylist.size()

// 计算大小 arraylist.size()
        System.out.println(sites.size());

14、 判断是否为空 arraylist.isEmpty()

// 判断是否为空 arraylist.isEmpty()
        System.out.println(sites.isEmpty());

15、 删除所有元素 arraylist.clear()

// 删除所有元素 arraylist.clear()
        sites.clear();
        System.out.println(sites.isEmpty());

16、排序

        // 数字排序
        ArrayList<Integer> numberList = new ArrayList<>();
        numberList.add(33);
        numberList.add(15);
        numberList.add(20);
        numberList.add(34);
        numberList.add(8);
        numberList.add(12);

        Collections.sort(numberList);
        for (int i : numberList)
            System.out.println(i);
        // 字母排序
        ArrayList<String> stringList = new ArrayList<>();
        stringList.add("C");
        stringList.add("D");
        stringList.add("J");
        stringList.add("A");
        stringList.add("E");

        Collections.sort(stringList);
        for (String i : stringList)
            System.out.println(i);

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值