Untitled
unknown
java
3 years ago
2.8 kB
6
Indexable
import java.util.ArrayList;
import java.util.LinkedList;
import java.util.Stack;
import java.util.List;
public class Student implements Borrower {
private String UID;
private String firstName;
private String lastName;
private MyDate joinDate;
private String department;
StudentSnapshot s;
public static ArrayList<Borrower> students = new ArrayList<Borrower>();
public Student() {
}
public Borrower setUID(String UID) {
this.UID = UID;
s.snapshot();
return this;
}
public Borrower setFirstName(String firstName) {
this.firstName = firstName;
s.snapshot();
return this;
}
public Borrower setLastName(String lastName) {
this.lastName = lastName;
s.snapshot();
return this;
}
public Borrower setJoinDate(MyDate joinDate) {
this.joinDate = joinDate;
s.snapshot();
return this;
}
public Borrower setDepartment(String department) {
this.department = department;
s.snapshot();
return this;
}
public void add(Borrower s) {
students.add(s);
}
public String getUID() {
return this.UID;
}
public String getFirstName() {
return this.firstName;
}
public String getLastName() {
return this.lastName;
}
public MyDate getJoinDate() {
return this.joinDate;
}
public String getDepartment() {
return this.department;
}
public static void printArr() {
for (Borrower student : students) {
System.out.println(student);
}
}
public static boolean checkRegistered(String UID) {
for (Borrower student : students) {
if (UID.equals(student.getUID())) {
return true;
}
}
return false;
}
@Override
public String toString() {
return "{" +
" UID='" + getUID() + "'" +
", firstName='" + getFirstName() + "'" +
", lastName='" + getLastName() + "'" +
", joinDate='" + getJoinDate() + "'" +
", department='" + getDepartment() + "'" +
"}";
}
}
class StudentSnapshot {
private String UID;
private String firstName;
private String lastName;
private MyDate joinDate;
private String department;
List <Object> dll = new LinkedList<Object> ();
public void snapshot(){
Student s = new Student();
s.setUID(this.UID);
s.setFirstName(this.firstName);
s.setLastName(this.lastName);
s.setJoinDate(this.joinDate);
s.setDepartment(this.department);
}
public void undo(){
Student snap = dll.head;
this.UID = snap.UID;
}
}Editor is loading...