如何将2D数组转换为列表并打印列表?

时间:2019-04-10 17:17:56

标签: java

我需要转换2D数组以列出并删除重复项并打印值。

通过使用以下代码,我无法打印2D数组

当我尝试打印它时,它正在打印索引值。

即使我尝试使用Iterator,

int array2D [][] = {{111,555,111,78,98},{87,54,53}};
        ArrayList<Integer> numberList = new ArrayList<Integer>();
        for(int i=0;i<array2D.length;i++)
        {
            for(int j=0;j<array2D[i].length;j++)
            {
                numberList.add(i, j);
            }
        }

        System.out.println(numberList);
Iterator iter = numberList.iterator();
          while (iter.hasNext()) {
             System.out.println(iter.next());
          }

仍然无法正常工作。

1 个答案:

答案 0 :(得分:0)

  

当我尝试打印它时,它会打印索引值。

正在打印索引值,因为您添加了索引而不是实际值。您应该通过索引ij来添加数组的实际值,例如:

 numberList.add(array2D[i][j]);

如果要删除重复项,可以使用Set代替ArrayList

Set<Integer> numberList = new LinkedHashSet<>();