gpt4 book ai didi

java - arraylist 整数中出现意外结果 - pde

转载 作者:行者123 更新时间:2023-12-01 08:59:52 27 4
gpt4 key购买 nike

我编写了一个函数,对二维列表中的数组元素求和并将它们添加到一维列表中:

  ArrayList<Integer> sumList(ArrayList<int[][]> list,int side){
ArrayList<Integer> sums= new ArrayList<Integer>();
for(int[][] array : list){
int arraySum = 0;
//arraySum += CalcMove(array,side);
for(int i = 0; i < 8; i++){
for(int j = 0; j < 8; j++){
arraySum+=array[i][j];
}
}
sums.add(arraySum);
//println(arraySum);
}
println(sums);
//sums.add(0);
//println(sums);
return sums;
}

问题是,结果完全不相关、不明确,甚至不在列表中。打印结果:

[-232, -232, -232] -232 [-232, -232, -232] -232 [-223, -223, -223] -223 [-223, -223, -223, -223] -223 [-219, -219, -219] -219 [-214, -214, -214] -214 [-14, -14, -14] -14 [-10, -10, -10] -10 [-5, -5, -5] -5 [-4, -4, -4, -4] -4 [-4, -4, -4, -4] -4 [-4, -4, -4, -4] -4 [-4, -4, -4, -4] -4 [-4, -4, -4, -4] -4 [-4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4, -4] -4 []

但是当我在循环之外添加另一个元素(在本例中它为零)时,结果将是好的(我仍然不确定)。之后的 println 结果:

[-232, -232, -232, 0]

我对此完全感到困惑,因为我很确定该功能没有任何问题,因为我单独测试了它并且工作得很好。它不可能是 arraylist,因为我用 c# 编写了整个项目,而且它也工作得很好。

最佳答案

这是一个收集二维数组中所有整数并将它们放入列表中的方法。

    public static List<Integer> listElements(int[][] array) {
List<Integer> list = new ArrayList<Integer>();
for (int[] subArray : array) {
IntStream.of(subArray).forEach(i -> list.add(i));
}
return list;
}

关于java - arraylist 整数中出现意外结果 - pde,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41771609/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com