1 import java
.util
.ArrayList
;
2 import java
.util
.Comparator
;
4 public class Person
implements Comparable
<Person
>, Comparator
<Person
> {
5 private Firstname firstname
;
10 //List of persons in the database to compare to.
11 private ArrayList
<Person
> personArrayList
;
14 setFirstname(new Firstname());
15 setOrigin(new Origin());
16 setPersonSize(new Size());
17 setWeight(new Weight());
19 setPersonArrayList(new ArrayList
<>());
22 Person(String firstname
, String country
, Integer size
, Integer weight
, String colorEye
) {
23 setFirstname(new Firstname(firstname
));
24 setOrigin(new Origin(country
));
25 setPersonSize(new Size(size
));
26 setWeight(new Weight(weight
));
27 setEye(new Eye(colorEye
));
28 setPersonArrayList(new ArrayList
<>());
31 public void setFirstname(Firstname firstname
) {
32 this.firstname
= firstname
;
35 public Firstname
getFirstname() {
39 public void setOrigin(Origin origin
) {
43 public Origin
getOrigin() {
47 public void setPersonSize(Size size
) {
51 public Size
getPersonSize() {
55 public void setWeight(Weight weight
) {
59 public Weight
getWeight() {
63 public void setEye(Eye eye
) {
71 public void setPersonArrayList(ArrayList
<Person
> personArrayList
) {
72 this.personArrayList
= personArrayList
;
75 public ArrayList
<Person
> getPersonArrayList() {
76 return personArrayList
;
80 public int compareTo(Person person
) {
81 return this.firstname
.compareTo(person
.getFirstname()) + this.origin
.compareTo(person
.getOrigin())
82 + this.size
.compareTo(person
.getPersonSize()) + this.weight
.compareTo(person
.getWeight())
83 + this.eye
.compareTo(person
.getEye());
87 public int compare(Person p1
, Person p2
) {
88 return p1
.compareTo(p2
);