import java.util.ArrayList;
import java.util.Random;
public static void main(String[] args) {
ArrayList<Integer> random = new ArrayList<Integer>();
random = getRandom(100, 100);
for (int i = 0; i < random.size(); i++)
System.out.println(random.get(i));
}
private static ArrayList<Integer> getRandom(int range, int size) {
ArrayList<Integer> randomNumbers = new ArrayList<Integer>();
for (int i = 0; i < size; i++)
randomNumbers.set(i, new Random().nextInt(range)+1);
return randomNumbers;
}
Всякий раз, когда я запускаю это, я получаю исключение в потоке «основной» java.lang.IndexOutOfBoundsException: Индекс: 0, Размер: 0Как создать метод, который генерирует ArrayList случайного числа
Первоначально, когда вы объявляете список массива , массив заднего конца пуст. Итак, когда вы вызываете add() только первый элемент, тогда создается массив размера по умолчанию. И, поскольку вы используете set(), это означает, что вы пытаетесь установить значение в индексе в пустом массиве. –
Таким образом, вы можете заменить set() на add(). –
Не нужно создавать этот объект ArrayList в Main, потому что вы возвращаете его из своего метода и назначаете его этой переменной, которая «перезаписывает» предыдущее значение. – null