Система голосования на Java, присваивание голоса объекту
Разрабатываю для итогового проекта многопоточное приложение голосования квартир по каком либо вопросу.
После создания класса Apartment не совсем понимаю как сделать, чтобы случайно генерировался ответ за/против/воздержусь и записывался к самому классу.
Само приложение будет вестись от модератора приложения, т.е. он входит в приложение с проверкой ник\пароль, вводит предложение и варианты решения. Со стороны участников голосования на данным момент требуется только генерация ответа (они якобы боты), чтобы потом использовать в качестве вычисления результата голосования.
public enum Choice {
NO, // 0
YES, // 1
DKNOW // 2
}
public class RandomChoice {
Random rand = new Random();
public Choice ask() {
int prob = (int) (100 * rand.nextDouble());
if (prob < 10) {
return Choice.DKNOW; // 10%
} else if (prob < 55) {
return Choice.YES; // 55%
} else {
return Choice.NO; // 35%
}
}
}
public class AskMe {
public static void answer(Choice result) {
switch (result) {
case NO:
System.out.println("Против");
break;
case YES:
System.out.println("За");
break;
case DKNOW:
System.out.println("Boздержаться");
break;
}
}
}
Ответы (1 шт):
Создать поле choice в классе Apartment и проинициализировать его в конструкторе:
public class Apartment {
private final Choice choice;
public Apartment() {
choice = (new RandomChoice()).ask();
}
}
Таким образом, как только вы создадите новый объект new Apartment(), внутри у него будет лежать произвольно заданный результат голосования choice.