diff --git a/solutions/java/remote-control-competition/1/src/main/java/ExperimentalRemoteControlCar.java b/solutions/java/remote-control-competition/1/src/main/java/ExperimentalRemoteControlCar.java new file mode 100644 index 00000000..d94f1632 --- /dev/null +++ b/solutions/java/remote-control-competition/1/src/main/java/ExperimentalRemoteControlCar.java @@ -0,0 +1,11 @@ +public class ExperimentalRemoteControlCar implements RemoteControlCar { + private int distance = 0; + + public void drive() { + distance += 20; + } + + public int getDistanceTravelled() { + return distance; + } +} diff --git a/solutions/java/remote-control-competition/1/src/main/java/ProductionRemoteControlCar.java b/solutions/java/remote-control-competition/1/src/main/java/ProductionRemoteControlCar.java new file mode 100644 index 00000000..465b02c3 --- /dev/null +++ b/solutions/java/remote-control-competition/1/src/main/java/ProductionRemoteControlCar.java @@ -0,0 +1,24 @@ +class ProductionRemoteControlCar implements RemoteControlCar, Comparable { + private int distance = 0; + private int victories = 0; + + public void drive() { + distance += 10; + } + + public int getDistanceTravelled() { + return distance; + } + + public int getNumberOfVictories() { + return victories; + } + + public void setNumberOfVictories(int numberOfVictories) { + this.victories = numberOfVictories; + } + + public int compareTo(ProductionRemoteControlCar other) { + return Integer.compare(other.victories, this.victories); + } +} diff --git a/solutions/java/remote-control-competition/1/src/main/java/RemoteControlCar.java b/solutions/java/remote-control-competition/1/src/main/java/RemoteControlCar.java new file mode 100644 index 00000000..a4ed25eb --- /dev/null +++ b/solutions/java/remote-control-competition/1/src/main/java/RemoteControlCar.java @@ -0,0 +1,4 @@ +public interface RemoteControlCar { + void drive(); + int getDistanceTravelled(); +} diff --git a/solutions/java/remote-control-competition/1/src/main/java/TestTrack.java b/solutions/java/remote-control-competition/1/src/main/java/TestTrack.java new file mode 100644 index 00000000..5b942c56 --- /dev/null +++ b/solutions/java/remote-control-competition/1/src/main/java/TestTrack.java @@ -0,0 +1,14 @@ +import java.util.Collections; +import java.util.List; + +public class TestTrack { + + public static void race(RemoteControlCar car) { + car.drive(); + } + + public static List getRankedCars(List cars) { + Collections.sort(cars); + return cars; + } +}