1.ArrayList(数组)
(1)代码
新建学生类:
package com.collection;
public class Student {
private String name;
private int age;
//添加构造方法 都是使用alt+enter快捷键
public Student() {
this.name = name;
this.age = age;
}
//添加get set方法
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public int getAge() {
return age;
}
public void setAge(int age) {
this.age = age;
}
//重写toString方法
@Override
public String toString() {
return "Student [name=" + name + ", age=" + age + "]";
}
}
ArrayList的使用:
package com.collection;
import java.util.ArrayList;
import java.util.Iterator;
/**
* ArrayList的使用
* 存储结构是数组,查找遍历速度快,增删慢
*/
public class Demo04 {
public static void main(String[] args) {
//创建集合
ArrayList arrayList = new ArrayList<>();
//创建对象
Student s1 = new Student();
s1.setName("John");
s1.setAge(23);
Student s2 = new Student();
s2.setName("Jane");
s2.setAge(22);
Student s3 = new Student();
s3.setName("Jack");
s3.setAge(21);
//1添加元素
arrayList.add(s1);
arrayList.add(s2);
arrayList.add(s3);
System.out.println("元素个数:" + arrayList);
//2删除元素
// arrayList.remove(s1);
// arrayList.remove(1);
System.out.println(arrayList);
//3遍历元素
System.out.println("-----迭代器--------");
Iterator it = arrayList.iterator();
while (it.hasNext()) {
Student student = (Student) it.next();
System.out.println(student);
}
//其他方法见之前的博客
//4判断
System.out.println(arrayList.isEmpty());
//查找
System.out.println(arrayList.indexOf(s2));
}
}
结果:
(2)查看ArrayList源码:Ctrl+鼠标左键,点击ArrayList可以查看。
2.Vector(现在用得较少)
使用代码跟ArrayList差不多,替换ArrayList就行。
3.LinkedList(双向链表结构)
使用代码跟ArrayList差不多,替换ArrayList就行。