目录
一、前言
- 学习概述:ArrayList是集合中的一种,目前提前学习这种,后面的例如Set系列、Map体系后续慢慢讲解
- 学习目标:掌握ArrayList集合的使用,自己运用完成一个简易的学生成绩管理系统
二、概述
1.数组
- 之前我们在Java100天编程指南---第9天:数组介绍了数组这一种存储数据的方法,但数组定义之后,类型、长度都确定了。
- 第12天我们就开始学习面向对象基础的过程了,使用数组存储一个类的对象进行操作,明显不现实,所以接下来我们学习ArrayList类。
2.ArrayList类
- 集合的大小是动态的,并提供了许多可以直接调用的方法
- 使用集合之后,可以直接存储一个类的信息,并对其操作。
3.总结
对比 | 数组 | ArrayList类 |
存储 | 定义后类型确定、长度确定 | 可动态变化 |
场景 | 适合数据个数和类型确定 | 适合数据个数不确定,要求增删等操作 |
三、构造
1.导包
import java.util.ArrayList;
- 该类在util下,使用需要提前导包
2.类型
ArrayList<E> array =new ArrayList<E>();
- E里面相当于数组定义的类型,我们可以填入一般的String、Integer(不想数组中的int类型),高端的可以填入类。
- 比如定义一个学生类,我们直接可以定义学生类数组。想要定义什么类型,直接替换E就行。
一般定义
ArrayList<Integer> array =new ArrayList<Integer>();
ArrayList<String> array =new ArrayList<String>();
高级定义
ArrayList<Student> array=new ArrayList<Student>();
四、常用方法
- 下面以存储String类的数组为例,数组存储数据为:[Hello, World, !],依次讲解下面几种常用的方法:
1.添加
编码实现
ArrayList<String> array=new ArrayList<String>();
array.add("Hello");//一般化添加元素
array.add("!");
array.add(1,"World");//指定位置添加元素
System.out.println(array);
输出结果
[Hello, World, !]
方法讲解
- 添加元素一般有2种方法,第一种是上面的直接在末尾添加。第二种是指定元素位置添加,只需给定下标就行
2.删除
编码实现
array.remove("World");//删除匹配的元素
array.remove(1);//删除指定下标的元素
输出结果
[Hello, World]
方法讲解
- 删除也有两种删除模式,第一种删除指定元素,如果数组存在给定的元素直接删除。
- 第二种,删除指定下标的元素
3.查询
编码实现
String s=array.get(0);//得到指定下标的元素
输出结果
Hello
方法讲解
- 查询给定下标查询就行
4.修改
编码实现
array.set(0, "HELLO");
输出结果
[HELLO, World, !]
方法讲解
- 给定下标,修改为指定的内容
5.其它
array.size();//返回数组大小
array.clear();//清空数组内容
array.isEmpty();//判断是否为空
五、存储对象
1.定义类
public class Student {
private String id;
private String name;
private String sex;
public Student(String id,String name,String sex)
{
this.id=id;
this.name=name;
this.sex=sex;
}
public String getId()
{
return id;
}
public void setId(String id)
{
this.id = id;
}
public String getName()
{
return name;
}
public void setName(String name)
{
this.name = name;
}
public String getSex()
{
return sex;
}
public void setSex(String sex)
{
this.sex = sex;
}
public void show()
{
System.out.println(id+"\t"+name+"\t"+sex);
}
}
- 我们先简单定义一个学生类
2.存储
ArrayList<Student> array=new ArrayList<Student>();
- 直接将类应用到集合就行
3.应用
Student s1=new Student("10010", "A", "男");//生成对象
Student s2=new Student("10011", "B", "女");
Student s3=new Student("10012", "C", "男");
array.add(s1);//添加对象到集合
array.add(s2);
array.add(s3);
- 我们将对象应用到集合之后,就可以向上面数组一样。对Student类里面的元素进行增删改查操作了,可以实现一个简易的学生成绩管理系统。注意集合中存储的元素并不是对象本身,而是对象的地址
- 到了第14天,我会讲解一下如何用ArrayList实现学生成绩管理系统
六、API的使用
- 通常,java不同的类有很多种方法,我们不可能完全记住。万一忘了,可以利用API查询方法,然后调用
1.官网下载
- 我们直接在官网下载到本地就行
- 链接:java API
2.在线查看
- 如果不想下载文档,我们可以直接在线查看数据
- 链接:菜鸟教程