Java:集合概述、ArrayList的使用

集合是与数组类似,也是一种容器,用于装数据的。

数组的特点:

  • 数组定义完成并启动后,类型确定,长度固定
  • 问题:在个数不能确定,且要进行增删数据操作的时候,数组是不太合适的。

集合的特点:

  • 集合的大小不固定,启动后可以动态变化,类型也可以选择不固定。
  • 集合非常适合做元素个数不确定,且要进行增删操作的业务场景
  • 集合提供了许多丰富、好用的功能,而数组的功能很单一
  • 集合容器中存储的是每个对象的什么东西?在堆内存中的地址

ArrayList集合

  • ArrayList是集合中的一种,它支持索引。

代码演示如下:

public class ArrayListDemo1 {
    public static void main(String[] args) {
        //1.创建ArrayList集合的对象
        ArrayList list = new ArrayList();

        //2.添加数据
        list.add("Java");
        list.add("Java1");
        list.add("MySQL");
        list.add("黑马");
        list.add(23);
        list.add(23.5);
        list.add(false);
        System.out.println(list.add('中'));
        System.out.println(list);

        //3.给指定索引位置插入元素
        list.add(0,"我爱学Java");
        System.out.println(list);
    }
}

泛型概述

  • ArrayList<E>: 其实就是一个泛型类,可以在编译阶段约束集合对象只能操作某种数据类型。

举例:

  • ArrayList<String>: 此集合只能操作字符串类型的元素
  • ArrayList<Integer>: 此集合只能操作整数类型的元素
  • 注意:集合中只能存储引用类型,不支持基本数据类型

实际代码演示如下:

public class ArrayListDemo2 {
    public static void main(String[] args) {
        //ArrayList<String> list = new ArrayList<String>();
        ArrayList<String> list = new ArrayList<>();
        list.add("Java");
        list.add("MySQL");
        System.out.println(list);

        ArrayList<Integer> list2 = new ArrayList<>();
        list2.add(22);
        list2.add(100);
        System.out.println(list2);
    }
}

ArrayList集合常用方法如图:

 具体代码演示如下:

public class ArrayListDemo3 {
    public static void main(String[] args) {
        ArrayList<String> list = new ArrayList<>();
        list.add("Java");
        list.add("Java1");
        list.add("MySQL");
        list.add("MyBatis");
        list.add("HTML");

        //1.public E get(int index): 获取某个索引位置处的元素值
        String e = list.get(3);
        System.out.println(e);

        //2.public int size(): 获取集合大小(元素个数)
        System.out.println(list.size());

        //3.完成集合的遍历
        for (int i = 0; i < list.size(); i++) {
            System.out.println(list.get(i));
        }

        //4.public E remove(int index): 删除某个索引位置处的元素值,并返回被删除的元素值
        System.out.println(list);
        String e2 = list.remove(2);
        System.out.println(e2);
        System.out.println(list);

        //5.public boolean remove(object o):直接删除元素值,删除成功返回true,删除失败返回false
        System.out.println(list.remove("MyBatis"));
        System.out.println(list);

        //6.public Eset(int index,E element): 修改某个索引位置处的元素值
        String e3 = list.set(0,"贾乃绿");
        System.out.println(e3);
        System.out.println(list);
    }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值