4

ここで初めて質問してすみません。

このような2D配列がある場合:

int[][] array2d = {{1, 2, 3}, {6, 7, 8}};

次のように複数の1D配列を追加するにはどうすればよいですか。

int[] array1d = {3, 2, 1};
int[] array1d2 = {8, 7, 6};

これで、元の2D配列は次のようになります。

int[][] array2d = {{1, 2, 3}, {6, 7, 8}, {3, 2, 1}, {8, 7, 6}};

注:これは、ボタンが押されるたびにJTextfieldからJTableに情報を追加するためのものです。したがって、2D配列はテーブル内のデータとして使用されます。これを達成するためのより良い方法があれば、私もそれをいただければ幸いです。=)

4

2 に答える 2

6

あなたの配列:

int[][] array2d = {{1, 2, 3}, {6, 7, 8}};

サイズが固定されているため、新しい値を保持するのに十分な容量を持つコピーを作成する必要があります。

int[][] newArray = Arrays.copyOf(array2d, 4);
newArray[2] = array1d;
newArray[3] = array1d2;

データを配列に追加するにはJTable、最初に配列などの非プリミティブ型に変換する必要がありますInteger。1 つのオプションは、Apache Commons を使用することです。

model.addRow(ArrayUtils.toObject(array));

配列の各行に対して。

于 2012-12-13T00:27:14.717 に答える
1

配列は固定サイズであるため、追加するには、配列のサイズを変更する必要があります。java.util.Arrays を参照してください。

次に、アレイの場所を設定します

arra2d[index] = array1d;

使用していない理由がありますか

TableModel.addRow(dataArray);

?

于 2012-12-13T00:24:40.273 に答える