2016-12-13 4 views
-4
String[] array; 
int i = 0; 
for(Element link : listOfLinks) { 
    array[i++] = link.text(); 
} 

Это код, который я пытаюсь заполнить.Как заполнить массив строк

Ошибка в том, что в строке: array[i++] = link.text(); слово «массив» подсвечивается и там написано: «The local variable array may not have been initialized»

+5

вы никогда не инициализируется свой массив строк. Как и инициализация 'i',' array' также должна быть инициализирована. Помните, что все переменные должны быть инициализированы перед использованием. 'String [] array = new String [100];' например –

+0

сначала инициализируйте свой массив, 'String [] array = new String [listOfLinks.size()];' –

+0

Вам нужно прочитать, что такое переменная класса, переменную экземпляра и локальную переменную. – user3437460

ответ

1

Вы должны инициализировать массив.

String[] array = new String[X]; 

X, являющийся размером массива.

1

Это правильно. Все, что вы сделали, это определить переменную, массив, которая может содержать ссылку на объект массива.

В его нынешнем виде ваш массив не был создан и не инициализирован.

Необходимо указать размер вашего массива. Например. путем изменения вашей первой строки на ...

String[] array = new String[listOfLinks.size()] 

Это будет создавать экземпляр массива и инициализировать все его элементы до нуля.

0

Вам необходимо инициализировать массив объектов, сначала задав измерение. Например:

String[] array = new String[10]; 

Если вам нужен динамический массив, я предлагаю с помощью ArrayList цепочек:

ArrayList<String> array = new ArrayList<String>();