【Java基础笔记】第十二章 ArrayList类

目录

  • 前言
  • 第十二章 ArrayList类
    • 12.1 集合概述
      • 12.1.1 数组的特点
      • 12.1.2 集合的特点
    • 12.2 ArrayList快速入门
      • 12.2.1 ArrayList集合
      • 12.2.2 ArrayList集合的对象获取
      • 12.2.3 ArrayList集合添加元素的方法
    • 12.3 ArrayList对于泛型的支持
      • 12.3.1 泛型概述
      • 12.3.2 举例
    • 12.4 ArrayList常用API
    • 【ArrayList集合案例1】遍历并删除元素值
    • 【ArrayList集合案例2】影片信息在程序中的表示
    • 【ArrayList集合案例3】学生信息系统的数据搜索

前言

  • 该文章为Java基础自学笔记
  • 其他内容:Java基础学习笔记目录
  • 学习用书:
    《Java核心技术 卷Ⅰ 基础知识(第10版)》
    《Java经典编程300例》

第十二章 ArrayList类

12.1 集合概述

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

12.1.1 数组的特点

  • 数组定义完成并启动后,类型确定长度固定
  • 在个数不确定,且要进行增删数据操作时,不便于数组操作

12.1.2 集合的特点

  • 集合的大小不固定,启动后可以动态变化,类型也可以选择不固定
  • 集合非常适合做元素个数不确定,且要进行增删操作的业务场景
  • 集合提供了许多丰富、好用的功能

12.2 ArrayList快速入门

12.2.1 ArrayList集合

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

12.2.2 ArrayList集合的对象获取

构造器 说明
public ArrayList() 创建一个空的集合对象

12.2.3 ArrayList集合添加元素的方法

方法名 说明
public boolean add(E e) 将指定的元素追加到此集合的末尾
public boolean add(int index,E element) 在此集合中的指定位置插入指定的元素

12.3 ArrayList对于泛型的支持

12.3.1 泛型概述

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

12.3.2 举例

  • ArrayList:此集合只能操作字符串类型的元素
  • ArrayList:此集合只能操作整数类型的元素
  • 集合中只能存储引用类型,不支持基本数据类型(int=>Integer)
  • 从JDK1.7开始,泛型后面的类型声明可以不写
	ArrayList<String> list = new ArrayList<>();

12.4 ArrayList常用API

方法名 说明
public E get(int index) 返回指定索引处的元素
public int size() 返回集合中的元素的个数
public E remove(int index) 删除指定索引处的元素,返回被删除的元素
public boolean remove(Objet o) 删除指定的元素,返回删除是否成功
public E set(int index,E element) 修改指定索引处的元素,返回被修改的元素

【ArrayList集合案例1】遍历并删除元素值

  • 需求:
    • 某个班级的考试在系统上进行,成绩大致为:98,77,66,89,79,50,100
    • 现在需要先把成绩低于80分以下的数据去掉
  • 分析:
    • 定义ArrayList集合存储多名学员的成绩
    • 遍历集合每个元素,找出低于80分的元素值并删除
    • 一边遍历一遍删除时,要从后往前遍历,否则会漏数据
	public static void main(String[] args) {
   
        ArrayList<Integer> scoreList = new ArrayList<>();
        scoreList.add(98);
        scoreList.add(77);
        scoreList.add(66);
        scoreList.add(89);
        scoreList.add(79);
        scoreList.add(50);
        scoreList.add(100);
        System.out.println("班级成绩:" + scoreList);
        // 一边遍历一遍删除时,要从后往前遍历,否则会漏数据
        for (int i = scoreList.size() - 1; i > 0; i--) {
   
            if (scoreList.get(i) < 80) {
   
                scoreList.remove(i);
            

你可能感兴趣的:(Java基础,java,开发语言,后端)