如何用整数填充Java中的二维ArrayList?

我必须创建一个大小未知的二维数组。因此,我决定使用2d ArrayList,问题是我不确定如何初始化这样的数组或存储信息。

说我有以下数据

   0 connects 1

2 connects 3

4 connects 5

.... etc多达大量的随机连接

我想插入

true(1) into [0][1], 

true(1) into [2][3],

true(1) into [4][5].

数组可以自动为我更新列/行吗

任何帮助表示赞赏,谢谢

回答:

像这样:

List<List<Integer>> twoDim = new ArrayList<List<Integer>>();

twoDim.add(Arrays.asList(0, 1, 0, 1, 0));

twoDim.add(Arrays.asList(0, 1, 1, 0, 1));

twoDim.add(Arrays.asList(0, 0, 0, 1, 0));

或者,如果您喜欢这样的话:

List<List<Integer>> twoDim = new ArrayList<List<Integer>>() {{

add(Arrays.asList(0, 1, 0, 1, 0));

add(Arrays.asList(0, 1, 1, 0, 1));

add(Arrays.asList(0, 0, 0, 1, 0));

}};


要插入新行,您可以

twoDim.add(new ArrayList<Integer>());

并在row您执行的操作上附加另一个元素

twoDim.get(row).add(someValue);


这是一个更完整的示例:

import java.util.*;

public class Test {

public static void main(String[] args) {

List<List<Integer>> twoDim = new ArrayList<List<Integer>>();

String[] inputLines = { "0 1 0 1 0", "0 1 1 0 1", "0 0 0 1 0" };

for (String line : inputLines) {

List<Integer> row = new ArrayList<Integer>();

Scanner s = new Scanner(line);

while (s.hasNextInt())

row.add(s.nextInt());

twoDim.add(row);

}

}

}

以上是 如何用整数填充Java中的二维ArrayList? 的全部内容, 来源链接: utcz.com/qa/413169.html

回到顶部