Как я могу объявить динамический массив строк в Java

Я использую String Array объявить как zoom z [] = new String [422]; . Но этот массив хранит значение от 0 до 32 , поэтому я получил исключение нулевого указателя после зацикливания значения 32 .

Как решить эту проблему в Java?

Как объявить динамический массив в Java?

21
задан edi9999 5 June 2014 в 10:04
поделиться

3 ответа

Вы хотите использовать реализацию Set или List (например, HashSet, TreeSet и т. д. или ArrayList, LinkedList и т. д.), поскольку в Java нет массивов с динамическим размером.

List<String> zoom = new ArrayList<>();
zoom.add("String 1");
zoom.add("String 2");

for (String z : zoom) {
    System.err.println(z);
}

Изменить: Вот более краткий способ инициализировать ваш список с произвольным количеством значений, используя varargs:

List<String> zoom = Arrays.asList("String 1", "String 2", "String n");
41
ответ дан 29 November 2019 в 20:06
поделиться

Возможно, вы ищете Вектор. Его емкость автоматически расширяется при необходимости. Это не лучший выбор, но в простых ситуациях сойдет. Вместо этого стоит потратить время на чтение ArrayList.

3
ответ дан 29 November 2019 в 20:06
поделиться

нет, в java невозможно сделать длину массива динамической. вместо этого вы можете использовать ArrayList или другие реализации List.

5
ответ дан 29 November 2019 в 20:06
поделиться
Другие вопросы по тегам:

Похожие вопросы: