Цикл по многомерным спискам в Java
Список списков обходят двумя циклами. Внешний идет по строкам, внутренний - по ячейкам текущей строки, поэтому строки могут быть разной длины. Сумму копят с нуля:
import java.util.ArrayList;
import java.util.Arrays;
ArrayList<ArrayList<Integer>> table = new ArrayList<>();
table.add(new ArrayList<>(Arrays.asList(1, 2)));
table.add(new ArrayList<>(Arrays.asList(3, 4)));
int sum = 0;
for (ArrayList<Integer> row : table) {
for (int num : row) {
System.out.println(num);
sum += num;
}
}
System.out.println(sum); // выведет 10
Дан код:
import java.util.ArrayList;
import java.util.Arrays;
ArrayList<ArrayList<Integer>> table = new ArrayList<>();
table.add(new ArrayList<>(Arrays.asList(1, 2, 3)));
table.add(new ArrayList<>(Arrays.asList(4, 5, 6)));
Найдите сумму всех чисел и выведите ее в консоль.
Дан трехмерный список:
import java.util.ArrayList;
import java.util.Arrays;
ArrayList<ArrayList<ArrayList<Integer>>> cube = new ArrayList<>();
ArrayList<ArrayList<Integer>> layer = new ArrayList<>();
layer.add(new ArrayList<>(Arrays.asList(1, 2)));
layer.add(new ArrayList<>(Arrays.asList(3, 4)));
cube.add(layer);
layer = new ArrayList<>();
layer.add(new ArrayList<>(Arrays.asList(5, 6)));
layer.add(new ArrayList<>(Arrays.asList(7, 8)));
cube.add(layer);
Найдите сумму всех чисел и выведите ее в консоль.