У меня есть функция getNormalList()
, которая должна возвращать список с 3 случайными целыми числами 0-5, а не все одинаковые.Это не работает, как я хочу, чтобы это работало.Иногда, несмотря на проверку, он выводит те же 3 числа.
public class SpinResultGenerator {
public ArrayList<Integer> getNormalList() {
ArrayList<Integer> integerList = new ArrayList<Integer>();
Random r = new Random();
int Low = 0;
int High = 6;
for (int i = 0; i < 3; i++) {
int number = r.nextInt(High - Low) + Low;
integerList.add(number);
}
if (integerList.get(0) == integerList.get(1) && integerList.get(0) == integerList.get(2)
&& integerList.get(1) == integerList.get(2)) {
integerList.clear();
for (int i = 0; i < 3; i++) {
int number = r.nextInt(High - Low) + Low;
integerList.add(number);
}
}
return integerList;
}
public ArrayList<Integer> getJackpotList() {
ArrayList<Integer> integerList = new ArrayList<Integer>();
integerList.add(5);
integerList.add(5);
integerList.add(5);
return integerList;
}
}
Если результатом является, например, [4,4,4]
, цикл for
генерирует новые числа.Тем не менее он все еще может вывести 3 одинаковых целых числа.Почему?