【问题标题】:Java how to convert a multidimensional array to single array easily? [duplicate]Java如何轻松将多维数组转换为单个数组? [复制]
【发布时间】:2013-12-19 16:15:27
【问题描述】:
[[4, 17, 28, 38, 43, 58, 69, 77, 83], [4, 12, 24, 35, 48, 55, 62, 73, 87], [11,
15, 22, 36, 46, 60, 67, 80, 84]]

如何将其转换为:

[4, 17, 28, 38, 43, 58, 69, 77, 83, 4, 12, 24, 35, 48, 55, 62, 73, 87, 11,
15, 22, 36, 46, 60, 67, 80, 84]

有什么简单的方法吗?

【问题讨论】:

    标签: java


    【解决方案1】:
    ArrayUtils.addAll(array1,array2)
    

    【讨论】:

      【解决方案2】:

      您可以创建一个新数组并使用 for 循环手动填充它,如下所示:

      int[][] numbers = {{4, 5, 6},{3, 1, 10}, {4, 2, 9}};
      
      
      ArrayList<Integer> numbers1Dim = new ArrayList<Integer>();
      
      for (int i = 0; i < numbers.length; i++)
      {
          for (int x = 0; x < numbers[i].length; x++)
          {
              numbers1Dim.add(numbers[i][x]);
          }
      }
      

      【讨论】:

        【解决方案3】:

        这样做

        Integer td[][]= {{4, 17, 28, 38, 43, 58, 69, 77, 83}, {4, 12, 24, 35, 48, 55, 62, 73, 87}, {11,15, 22, 36, 46, 60, 67, 80, 84}};
        List<Integer> singleDArray = new ArrayList<Integer>();
        for (Integer[] array :td) {         
              singleDArray.addAll(Arrays.asList(array));
        }       
        Integer[] sd = singleDArray.toArray(new Integer[singleDArray.size()]);
        

        【讨论】:

          【解决方案4】:

          我会使用嵌套的 for 循环:

          Integer[][] array = <your array>;  
          List resultList = new ArrayList();
          for (int i = 0; i < array.length; i++) {  
              for (int j = 0; j < array[i].length; j++) {  
                  resultList.add(array[i][j]);
              }  
          }
          Integer[] resultArrayList = resultList.toArray(new Integer[resultList.size()]);
          System.out.println(resultArrayList);
          

          }

          【讨论】:

            猜你喜欢
            • 2014-09-09
            • 2015-06-09
            • 1970-01-01
            • 2015-01-06
            • 2011-10-10
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多