diff --git a/src/main/java/core/basesyntax/Application.java b/src/main/java/core/basesyntax/Application.java index 42ed4ef86..ccb8d0a22 100644 --- a/src/main/java/core/basesyntax/Application.java +++ b/src/main/java/core/basesyntax/Application.java @@ -1,7 +1,17 @@ package core.basesyntax; +import java.util.Random; + public class Application { + private static final int NUMBER_OF_BALLS = 3; + public static void main(String[] args) { - // create three balls using class Lottery and print information about them in console + ColorSupplier colorSupplier = new ColorSupplier(); + Random random = new Random(); + + Lottery lottery = new Lottery(colorSupplier, random); + for (int i = 0; i < NUMBER_OF_BALLS; i++) { + System.out.println(lottery.getRandomBall()); + } } } diff --git a/src/main/java/core/basesyntax/Ball.java b/src/main/java/core/basesyntax/Ball.java new file mode 100644 index 000000000..860642768 --- /dev/null +++ b/src/main/java/core/basesyntax/Ball.java @@ -0,0 +1,30 @@ +package core.basesyntax; + +public class Ball { + private String color; + private int number; + + public int getNumber() { + return number; + } + + public void setNumber(int number) { + this.number = number; + } + + public String getColor() { + return color; + } + + public void setColor(String color) { + this.color = color; + } + + @Override + public String toString() { + return "Ball{" + + "color='" + color + '\'' + + ", number=" + number + + '}'; + } +} diff --git a/src/main/java/core/basesyntax/Color.java b/src/main/java/core/basesyntax/Color.java new file mode 100644 index 000000000..48eb4c6c7 --- /dev/null +++ b/src/main/java/core/basesyntax/Color.java @@ -0,0 +1,10 @@ +package core.basesyntax; + +public enum Color { + BLUE, + YELLOW, + BLACK, + BROWN, + PINK, + GREEN +} diff --git a/src/main/java/core/basesyntax/ColorSupplier.java b/src/main/java/core/basesyntax/ColorSupplier.java index 25e8b23b1..cefe34f91 100644 --- a/src/main/java/core/basesyntax/ColorSupplier.java +++ b/src/main/java/core/basesyntax/ColorSupplier.java @@ -1,7 +1,12 @@ package core.basesyntax; +import java.util.Random; + public class ColorSupplier { + private final Random random = new Random(); + public String getRandomColor() { - return null; + int index = random.nextInt(Color.values().length); + return Color.values()[index].name(); } } diff --git a/src/main/java/core/basesyntax/Lottery.java b/src/main/java/core/basesyntax/Lottery.java new file mode 100644 index 000000000..dd9b37eef --- /dev/null +++ b/src/main/java/core/basesyntax/Lottery.java @@ -0,0 +1,21 @@ +package core.basesyntax; + +import java.util.Random; + +public class Lottery { + private static final int MAX_NUMBER = 100; + private final Random random; + private final ColorSupplier colorSupplier; + + public Lottery(ColorSupplier colorSupplier, Random random) { + this.colorSupplier = colorSupplier; + this.random = random; + } + + public Ball getRandomBall() { + Ball ball = new Ball(); + ball.setColor(colorSupplier.getRandomColor()); + ball.setNumber(random.nextInt(MAX_NUMBER)); + return ball; + } +}