【问题标题】:How to use the list.toArray() method in Java for a two-dimensional array如何在 Java 中将 list.toArray() 方法用于二维数组
【发布时间】:2022-01-22 11:40:50
【问题描述】:

我创建了一个 int 数组列表,我想将它作为二维数组返回。

List<int[]> ans = new ArrayList<>();
int[][] toReturn = new int[ans.size()][];
return ans.toArray(toReturn);

这段代码是如何工作的? list.toArray()list.toArray(T[] a)有什么区别?

【问题讨论】:

  • 你试过docs吗?
  • 顺便说一句,List&lt;List&lt;Integer&gt;&gt; 也可以使用

标签: java arrays


【解决方案1】:

toArray 创建一个全新的数组,而toArray(T[] arr) 尝试将列表的所有元素放入提供的arr 数组中。

【讨论】:

  • toArray() 返回一个Object 数组而不是T[]
【解决方案2】:

您只需要对列表使用 foreach 循环,对数组使用普通循环。

public int[][] toArray(ArrayList<> inputList){
int[][] toReturn = new int[inputList.size()][];
int i =0;
for(int[] arrayOfInts : inputList){
  for(int j=0;j<arrayOfInts.length;j++){
  toReturn[i][j]=arrayOfInts [j] ;
  }
i++;
}
return toReturn  ;
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2013-08-28
    • 2013-12-18
    • 2020-10-04
    • 1970-01-01
    • 2021-03-03
    • 1970-01-01
    • 1970-01-01
    • 2011-07-24
    相关资源
    最近更新 更多