Java ArrayList类
集合概述
编程的时候如果要存储多个数据,使用长度固定的数组存储格式,不一定满足我们的需求,更适应不了变化的需求。
集合类的特点:提供一种存储空间可变的存储模型,存储的数据容量可以发生改变
集合类有很多,目前先学习ArrayList
ArrayList< E>:
- 可调整大小的数组实现
- < E>是一种特殊的数据类型,泛型
使用:
在出现E的地方我们使用引用数据类型替换即可
举例:
ArrayList<String>,ArrayList<Student>
ArrayList构造方法和添加方法
方法名 | 说明 |
---|---|
public ArrayList() | 创建一个空的集合对象 |
public boolean add(E e) | 将指定的元素追加到此集合的末尾 |
public void add(int index,E ekement) | 在此集合中的制定位置 |
代码测试:
import java.util.ArrayList;
/*
ArrayList测试
*/
public class ArrayListTest {
public static void main(String[] args) {
//创建一个空的集合对象
ArrayList<String> array = new ArrayList<String>();
//输出集合
System.out.println("array:"+array);
array.add("Hello"); //将指定的元素追加到此集合的末尾
System.out.println("array:"+array);
array.add("World!");
System.out.println("array:"+array);
array.add(1,"Java!"); //将指定的元素加到指定的位置
System.out.println("array:"+array);
array.remove(2); //删除指定位置元素
System.out.println("array:"+array);
}
}
运行结果:
ArrayList集合常用方法
方法名 | 说明 |
---|---|
public boolean remove(Object obj) | 删除指定元素 |
public E remove(int index) | 删除指定索引处的元素,返回被删除的元素 |
public E set(int index,E element) | 修改指定索引处的元素,返回被修改的元素 |
public E get(int index) | 返回指定索引处的位置 |
public int size() | 返回集合中的元素个数 |
案例测试
需求:ArrayList存储学生对象并遍历
代码:
/*
学生
*/
public class Student {
private String name; //姓名
private int score; //分数
public Student(){}
public Student(String name,int score){
this.name = name;
this.score = score;
}
public String getName() {
return name;
}
public int getScore() {
return score;
}
}
import java.util.ArrayList;
/*
ArrayList
*/
public class ArrayListTest {
public static void main(String[] args) {
//创建集合类对象
ArrayList<Student> arrayList = new ArrayList<>();
//添加学生对象
arrayList.add(new Student("老大",33));
arrayList.add(new Student("老二",34));
arrayList.add(new Student("老三",99));
System.out.println(arrayList);
for(int i = 0;i<arrayList.size();i++){
System.out.println("第"+(i+1)+"位学生是:"+arrayList.get(i).getName()+",他的分数是:"+arrayList.get(i).getScore());
}
}
}
运行结果: