我有两个元素和数字列表,但是如果我不知道确切的数组大小,如何将它们放入数组中?新的int [elements.size()] [我不确定这个大小]。
例如:
元素列表= [2,5] 数字列表= [99,100],[1,9,8,10,70]
public static int[][] arrays(List<Integer> numbers, List<Integer> elements){
int count = 0;
int x = 0;
int y = 0;
int[][] list = new int[elements.size()][];
for (Integer e : elements) {
for (int i = count; i < count+e; i++) {
list[x][y] = numbers.get(i);
y++;
}
x++;
y = 0;
count += e;
}
return list;
}
答案 0 :(得分:0)
您方法的正确输入将是列表列表,父列表中的每个列表长度可能不同:
public static int[][] arrays(List<List<Integer>> numbers) {
int[][] array = new int[numbers.size()][];
for (int i=0; i < numbers.size(); ++i) {
array[i] = new int[numbers.get(i).size()];
for (int j=0; j < numbers.get(i).size(); ++j) {
array[i][j] = numbers.get(i).get(j);
}
}
return array;
}