-import javax.swing.*;
+import java.util.ArrayList;
+import java.util.Comparator;
-public class Person extends JPanel implements Comparable<Person> {
+public class Person implements Comparable<Person>, Comparator<Person> {
private Firstname firstname;
private Origin origin;
private Size size;
private Weight weight;
private Eye eye;
+ //List of persons in the database to compare to.
+ private ArrayList<Person> personArrayList;
- Person(Firstname firstname) {
- setFirstname(firstname);
+ Person() {
+ setFirstname(new Firstname());
+ setOrigin(new Origin());
+ setPersonSize(new Size());
+ setWeight(new Weight());
+ setEye(new Eye());
+ setPersonArrayList(new ArrayList<>());
+ }
+
+ Person(String firstname, String country, Integer size, Integer weight, String colorEye) {
+ setFirstname(new Firstname(firstname));
+ setOrigin(new Origin(country));
+ setPersonSize(new Size(size));
+ setWeight(new Weight(weight));
+ setEye(new Eye(colorEye));
+ setPersonArrayList(new ArrayList<>());
}
public void setFirstname(Firstname firstname) {
return eye;
}
+ public void setPersonArrayList(ArrayList<Person> personArrayList) {
+ this.personArrayList = personArrayList;
+ }
+
+ public ArrayList<Person> getPersonArrayList() {
+ return personArrayList;
+ }
+
@Override
public int compareTo(Person person) {
- return 0;
+ return this.firstname.compareTo(person.getFirstname()) + this.origin.compareTo(person.getOrigin())
+ + this.size.compareTo(person.getPersonSize()) + this.weight.compareTo(person.getWeight())
+ + this.eye.compareTo(person.getEye());
+ }
+
+ @Override
+ public int compare(Person p1, Person p2) {
+ return p1.compareTo(p2);
}
}