-5

次のように、単一および二重の ArrayLists の null 以外のパラメーターをクラスメソッドに渡すことで、int[][] を返すことに興味があります。

//outer loop
ArrayList<ArrayList<Integer>> rowsInMatrixA;
//inner loop
ArrayList<Integer>  colsInMatrixA;

ネイティブ Java のみを使用します。ここ、Java API、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;
}

それでも機能しません: コンパイルしてメインで出力を取得しようとすると、この行で IndexOutOfBoundsException が発生します。

    newMatrix[i][j] = rows.get(i).get(j);

これはどのように解決できますか?助けていただければ幸いです。ありがとう。

4

2 に答える 2

0

これは、arraylist をループすることで簡単に実行できると思います。

于 2013-02-11T08:34:28.297 に答える
0

関数が間違っていると宣言しました:

int[][]の代わりに返す必要がありint[]ます。

さらに、newMatrix[i]1D 配列を表します。整数を入れることはできません。newMatrix[i][j]代わりに使用してください。

于 2013-02-11T08:47:48.317 に答える