Вопрос-ответ

How to initialize an array in Java?

Как инициализировать массив в Java?

Я инициализирую массив следующим образом:

public class Array {

int data[] = new int[10];
/** Creates a new instance of Array */
public Array() {
data[10] = {10,20,30,40,50,60,71,80,90,91};
}
}

NetBeans указывает на ошибку в этой строке:

data[10] = {10,20,30,40,50,60,71,80,90,91};

Как я могу решить проблему?

Переведено автоматически
Ответ 1
data[10] = {10,20,30,40,50,60,71,80,90,91};

Приведенное выше неверно (синтаксическая ошибка). Это означает, что вы присваиваете массив data[10], который может содержать только элемент.

Если вы хотите инициализировать массив, попробуйте использовать инициализатор массива:

int[] data = {10,20,30,40,50,60,71,80,90,91};

// or

int[] data;
data = new int[] {10,20,30,40,50,60,71,80,90,91};

Обратите внимание на разницу между двумя объявлениями. При присвоении нового массива объявленной переменной необходимо использовать new.

Даже если вы исправите синтаксис, доступ data[10] по-прежнему будет некорректным (вы можете получить доступ только к data[0] to data[9], потому что индекс массивов в Java основан на 0). Доступ data[10] вызовет исключение ArrayIndexOutOfBoundsException.

Ответ 2

Попробуйте

data = new int[] {10,20,30,40,50,60,71,80,90,91 };
Ответ 3

Когда вы создаете массив размером 10, он выделяет 10 слотов, но от 0 до 9. Этот цикл for может помочь вам увидеть это немного лучше.

public class Array {
int[] data = new int[10];
/** Creates a new instance of an int Array */
public Array() {
for(int i = 0; i < data.length; i++) {
data[i] = i*10;
}
}
}
Ответ 4

Вы можете сделать:

int[] data = {10,20,30,40,50,60,71,80,90,91};
java arrays