/ / Java acess перший список у списку списку - java, list, arraylist, вкладений

Java викликає перший список у списку списку - java, list, arraylist, nested

Ось моя програма

ArrayList<ArrayList<?>> matrix = new ArrayList();  // nested list so as to have each matrix.add(new ArrayList());
matrix.add(new ArrayList());
matrix.add(new ArrayList());

Я знаю, що можу отримати доступ до кожного елемента спискуusing matrix.get (0) але що, якщо я хочу отримати доступ до першого елемента першого вкладеного списку (сподіваюся, що це зрозуміло) Це те, що я хотів би зробити. Було б навіть краще, якби я міг перетворити кожен з вкладених списків або навіть весь список у відповідний масив з вкладеними масивами всередині, але це може бути високий порядок. Мені дуже шкода, що мої навички програмування дійсно бідні.

Відповіді:

1 для відповіді № 1

Щоб отримати доступ до першого елемента першого списку, ви можете зробити це matrix.get(0).get(0);. Коли ти робиш matrix.get(0) що повертає перше List, за якими можна виконати більше операцій (get, add, removeі т.д.), що нічим не відрізняється від чогось подібного aList.get(0)


0 для відповіді № 2
<?> foo = matrix.get(0).get(0);

0 для відповіді № 3

Вам просто потрібно послатися на перший елемент першого елемента

matrix.get(0).get(0)

0 для відповіді № 4

Ви можете використати щось подібне

public static void main(String[] args) throws Exception {
ArrayList<ArrayList<?>> matrix = new ArrayList<ArrayList<?>>();
ArrayList<Integer> al = new ArrayList<Integer>();
al.add(1);
matrix.add(al);
ArrayList<Integer> al2 = new ArrayList<Integer>();
al2.add(2);
al2.add(3);
matrix.add(al2);

Object[] objs = new Object[al.size()];
objs = matrix.toArray(objs);
System.out.println(java.util.Arrays.toString(objs));
}

Виходи

[[1], [2, 3]]

0 для відповіді № 5

Сподіваюся, що наступний код описує все для вас:

//get the first list from matrix
List<?> firstNestedList = matrix.get(0);

//get the first element from the firstNestedList
Object neededElement = firstNestedList.get(0);