package set;
import java.util.ArrayList;
import java.util.ListIterator;
public class Lesson7 {
public static void main(String[] args) {
/*
* ArrayList
* 数组结构的实现,查询快,增删慢
* 运行效率快,线程不安全
* Vector 与ArrayList类似 数组结构的实现,查询快,增删慢
* 运行效率慢,线程安全
*
* LinkedList: 链表结构实现,增删快,查询慢
*
* */
//创建ArrayList
ArrayList arrayList = new ArrayList<>();
Lesson3Student s1 = new Lesson3Student("刘德华", 42);
Lesson3Student s2 = new Lesson3Student("郭富城",54);
Lesson3Student s3 = new Lesson3Student("梁朝伟",53);
arrayList.add(s1);
arrayList.add(s2);
arrayList.add(s3);
//使用列表迭代器从后往前遍历元素
ListIterator listIterator = arrayList.listIterator(); //创建迭代器
while (listIterator.hasPrevious()) {
Lesson3Student s = (Lesson3Student) listIterator.previous();
System.out.println(s.toString()+" fjjj");
}//previousIndex()从后往前返回下标,previous()从后往前返回元素,并向前查找
}
}
package set;
public class Lesson3Student {
private String name;
private int age;
public Lesson3Student() {
}
public Lesson3Student(String name, int age) {
this.name = name;
this.age = age;
}
@Override
public String toString() {
return "Lesson3Student{" + "name='" + this.name + ", age=" + this.age + '}';
}
@Override //给Lesson7用的重载方法
public boolean equals(Object obj) {
// 判断是否为空
if (obj == null) {
return false;
}
// 判断是否是同一个对象
if (this == obj) {
return true;
}
// 判断是否为同一个类型
if (obj instanceof Lesson3Student) {
Lesson3Student s = (Lesson3Student)obj;
// 判断属性是否相等
if (this.name == s.getName()&&this.age == s.getAge()){
return true;
}
}
return false;
}
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;
}
}