Java ArrayList到int[][]-索引超出范围异常
我感兴趣的是通过将单数组列表和双数组列表的非空参数传递给类方法来返回int[]],例如:Java ArrayList到int[][]-索引超出范围异常,java,arraylist,Java,Arraylist,我感兴趣的是通过将单数组列表和双数组列表的非空参数传递给类方法来返回int[]],例如: //outer loop ArrayList<ArrayList<Integer>> rowsInMatrixA; //inner loop ArrayList<Integer> colsInMatrixA; 如何解决这个问题?我将感谢任何帮助。谢谢。我认为通过循环arraylist可以很容易地做到这一点 您声明您的函数错误: 它应该返回int[],而不是int[]
//outer loop
ArrayList<ArrayList<Integer>> rowsInMatrixA;
//inner loop
ArrayList<Integer> colsInMatrixA;
如何解决这个问题?我将感谢任何帮助。谢谢。我认为通过循环arraylist可以很容易地做到这一点 您声明您的函数错误: 它应该返回int[],而不是int[]
此外,newMatrix[i]表示一维数组。你不能把整数放进去。改用newMatrix[i][j]。好的,这里有一个建议——先自己尝试一下。如果你似乎无法解决这个问题,请在这里发布你尝试过的内容,我们将帮助你解决这个问题。你需要两个循环。试着做点什么。不要试图自己去做,我会给你-1分。当你这样做的时候,你可能会看到一些提示。祝你好运用本地Java?没有框架库?是的,这是一个挑战;对不起,两个循环,你的任务完成了。对于本机Java,可以吗?您可能正在寻找一些内置转换器,但没有。我们需要手动复制这些值。任何第三方都会在场景背后做同样的事情。我觉得这不是一个答案,这是一个评论,我不是反对者:我很感激这个提示;我希望我能弄明白。
public static int[][] convertIntegers(ArrayList<ArrayList<Integer>> rows, ArrayList<Integer> cols)
{
int[][] newMatrix = new int[rowsInMatrixA.size()][colsInMatrixB.size()];
//iterate outer, through rows
for (int i=0; i < newMatrix.length; i++)
{
//iterate inner, through columns
for(int j = 0; j < newMatrix[0].length; j++){
newMatrix[i][j] = rows.get(i).get(j);
}
}
return newMatrix;
}
newMatrix[i][j] = rows.get(i).get(j);