【问题标题】:Unexpected result in arraylist integer - pdearraylist 整数中的意外结果 - pde
【发布时间】:2017-06-05 21:53:34
【问题描述】:

我编写了一个函数,将 2d 列表中的数组元素相加并将它们添加到 1d 列表中:

  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;
  }

问题是,结果完全不相关、模棱两可,甚至不在列表中。 println 结果:

[-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]

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

【问题讨论】:

  • 你传递的列表的大小是多少?
  • @NirajPatel 每次都不一样。这取决于决策树。
  • 您是否有多个线程正在运行?理想情况下,提供minimal reproducible example 来演示问题...
  • 好吧,您可以尝试提供minimal reproducible example,正如我之前提到的。如果我们可以重现它,我相信我们可以解决它。 (不清楚代码中注释掉的行是关于什么的。您确定在运行代码并生成输出时它们仍然被注释掉吗?)
  • 请发一个minimal reproducible example,我们可以复制粘贴自己运行。具体来说,您需要对一些输入进行硬编码并调用此函数。如果我们看不到您的意见,我们将很难为您提供帮助。

标签: java arrays arraylist integer processing


【解决方案1】:

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

    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;
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-09-22
    • 1970-01-01
    • 2012-08-25
    • 2022-01-05
    • 2011-08-22
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多