How to create a Multidimensional ArrayList in Java?
Как создать многомерный список массивов в Java?
Мне нужно создать многомерный список массивов для хранения строковых значений. Я знаю, как это сделать со стандартным массивом, вот так: public static String[][] array = {{}} но это бесполезно, потому что я не знаю размера своего массива, все, что я знаю, это сколько измерений он будет иметь.
Как я могу создать "динамически изменяемый массив с размерами 2 / +"?
Редактировать / Обновить
Может быть, было бы проще изменить размер или определить стандартный массив с помощью переменной? Но я не знаю? Хотя, вероятно, проще использовать мою первоначальную идею ArrayList ... Все, что мне нужно, это полный пример кода для создания 2D списка массивов и добавления so примеров значений к обоим измерениям без знания индекса.
Переведено автоматически
Ответ 1
ArrayList<ArrayList<String>> array = new ArrayList<ArrayList<String>>();
В зависимости от ваших требований, вы можете использовать универсальный класс, подобный приведенному ниже, чтобы упростить доступ:
import java.util.ArrayList;
classTwoDimentionalArrayList<T> extendsArrayList<ArrayList<T>> { publicvoidaddToInnerArray(int index, T element) { while (index >= this.size()) { this.add(newArrayList<T>()); } this.get(index).add(element); }
publicvoidaddToInnerArray(int index, int index2, T element) { while (index >= this.size()) { this.add(newArrayList<T>()); }
Надеюсь, вы понимаете, что я имею в виду и что происходит. Кроме того, вам нужно будет импортировать java.util.ArrayList; для этого, если вы используете класс Java.