Я пытаюсь создать список из 25 неповторяющихся случайных чисел в Java, и я продолжаю получать ошибку Missing Return Statement. Как можно видеть, я попытался поставить return перед вызовом метода внутри себя. Не уверен, чего не хватает. Он также не работает только с return (rando)
Отсутствует заявление о возврате в рекурсивной функции Java
import java.util.*;
public class arrayList{
ArrayList<Integer> checkRandom;
ArrayList<Integer> array4;
ArrayList<Integer> array2;
ArrayList<Integer> array3;
public int addRandom(){
Random rnd = new Random();
int b=0;
for (int i=0; i<26; i++){
int rando = rnd.nextInt(101);
if (checkRandom.indexOf(rando) != -1){
return addRandom();
}
else{
checkRandom.add(rando);
array4.add(rando);
return (rando);
}
}
for (int j=0;j<26;j++){
int right;
right = checkRandom.get(j);
System.out.println(right);
}
return -1;
}
public static void main(String args[]){
arrayList randomGen = new arrayList();
randomGen.addRandom();
}
}
Exception in thread "main" java.lang.NullPointerException
at arrayList.addRandom(arrayList.java:14)
at arrayList.main(arrayList.java:37)
Почему 'для (INT I = 0; г <26; я ++) {' 'в addRandom'? ** Подсказка ** удалите петлю. Кроме того, *** пожалуйста *** не воссоздавайте 'Random' в' addRandom'. Это действительно плохая идея. –