From cfedacde335790da3ac2216a77b9517f94aad95b Mon Sep 17 00:00:00 2001 From: Selebrator Date: Mon, 13 May 2019 22:03:06 +0200 Subject: [PATCH] Improvements for 5.3 --- src/main/java/_5/_3/Group.java | 36 ++++++++++----------- src/main/java/_5/_3/Older.java | 4 +-- src/main/java/_5/_3/Person.java | 33 ++++++++++--------- src/main/java/provided/_5/_3/TestGroup.java | 14 ++++++++ 4 files changed, 50 insertions(+), 37 deletions(-) create mode 100644 src/main/java/provided/_5/_3/TestGroup.java diff --git a/src/main/java/_5/_3/Group.java b/src/main/java/_5/_3/Group.java index b70dda2..7175047 100644 --- a/src/main/java/_5/_3/Group.java +++ b/src/main/java/_5/_3/Group.java @@ -1,26 +1,26 @@ package _5._3; import java.util.LinkedList; +import java.util.List; -public class Group { - private LinkedList members = new LinkedList<>(); +public class Group> { + private List members = new LinkedList<>(); - public void add(T member) { - this.members.add(member); - } + public void add(T member) { + this.members.add(member); + } - public T getOldest() { - if (members.isEmpty()) { - return null; - } + public T getOldest() { + if(this.members.isEmpty()) { + return null; + } - T oldestMember = members.get(0); - - for (int i=1; i { - public boolean isOlder(T other); - - public int getAge(); + boolean isOlder(T other); } diff --git a/src/main/java/_5/_3/Person.java b/src/main/java/_5/_3/Person.java index 4856429..881ac15 100644 --- a/src/main/java/_5/_3/Person.java +++ b/src/main/java/_5/_3/Person.java @@ -1,23 +1,24 @@ package _5._3; -public class Person implements Older { - private String name; - private int age; +public class Person implements Older { + private String name; + private int age; - public Person(String name, int age) { - this.name = name; - this.age = age; - } + public Person(String name, int age) { + this.name = name; + this.age = age; + } - public int getAge() { - return age; - } + @Override + public boolean isOlder(Person other) { + return this.getAge() > other.getAge(); + } - public String getName() { - return name; - } + public int getAge() { + return this.age; + } - public boolean isOlder(T other) { - return this.age > other.getAge(); - } + public String getName() { + return this.name; + } } diff --git a/src/main/java/provided/_5/_3/TestGroup.java b/src/main/java/provided/_5/_3/TestGroup.java new file mode 100644 index 0000000..789adf1 --- /dev/null +++ b/src/main/java/provided/_5/_3/TestGroup.java @@ -0,0 +1,14 @@ +package provided._5._3; + +import _5._3.Group; +import _5._3.Person; + +public class TestGroup { + public static void main(String[] args) { + Group group = new Group<>(); + group.add(new Person("Alice", 25)); + group.add(new Person("Bob", 23)); + group.add(new Person("Carl", 26)); + System.out.println(group.getOldest().getName()); + } +} \ No newline at end of file