Этот код генерирует исключение нулевого указателя в строке 20, где вызывается метод compareTo(). Любые советы о том, как заставить его работать?Класс Java Integer и compareTo()
package exam1review;
import java.util.Random;
public class ArrayTester {
/**
* @param args
*/
public static void main(String[] args) {
int result, max=0;
Integer[] myArray = new Integer[10];
Random rand = new Random();
for (int i = 0; i < 10; i++) {
myArray[i] = rand.nextInt();
System.out.println(myArray[i]);
while (i != myArray.length - 1) {
result = myArray[i].compareTo(myArray[i+1]);
if (result > 0)
max = myArray[i];
else
max = myArray[i+1];
}
}
System.out.println(max);
}
}
Есть ли причина использовать 'Integer' вместо' int'? –
также, 'i' никогда не изменяется внутри цикла while, поэтому он должен быть бесконечным. – yurib
Почему вы находите максимальное значение таким образом? Это слишком сложно для такой простой задачи ... –