6
コンパイル時に配列の次元をまだ認識していないとき、どのように配列の次元を設定しますか?D2:実行時にアレイのサイズを設定する
例:byte [] [] a =新しいバイト[サイズ] [サイズ];コンパイラはそれを許可しません。 グリッドをどのように初期化する必要がありますか?手動で?
byte[] a1;
for (int i; i < size; i++) {
a1 ~= 0;
}
byte[][] a2;
for (int i; i < size; i++) {
a2 ~= a1;
}
もっと簡単な方法があると教えてください。
編集:これも動作しますが、それはまだ絶望的に原始的で、かつ遅い
byte[][] a3;
a3.length = size;
for (int i; i < size; i++) {
a3[i].length = size;
}
はい、そのトリックはありません。もちろん、それはauto = new int [] [](size、size);を読み込む必要があります。しかし、それは動作します。ありがとう。私は前にこの表記を見ましたが、どこを覚えていないのですか。 – fwend
これは依然として不揃いな配列を生成するので、サイズを変更するのは難しいことに注意してください。 – BCS