0

Java でa を定義した2d vectorとします。最初の次元のサイズは10で、2 番目の次元のサイズは です1。この最初の次元のサイズを大きくしたい場合、どうすれば2d vectorよいでしょうか?

130 番目のセル (つまり) に数値を追加したいとしv1[29][0]=1ますが、ベクトルのサイズは10です。

Javaでの私のコードは次のとおりです。

Vector [][] v1 = new Vector [10][];

for (int i=0 ; i<10; i++)
    if (i==0) {
        v1[i]=new Vector[1];
    }
    else
        v1[i]=v1[0];
v1[0][0]=new Vector(1);
4

1 に答える 1

0

たとえば、新しい、より大きな配列を割り当てる必要がありますv1 = new Vector[30][]

Vector同期されていることに注意してください。スレッドセーフな実装が必要ない場合はArrayList、代わりにを使用することをお勧めしますVector

また、自分が何をしているのかを理解していることを確認してください。「1 番を 30 番目のセルに追加する (つまり、v1[30][0]=1)」int v1 = new int[31][]だけが必要な場合は、ベクトルなしで十分です。ちなみに、30番目の枡はv1[29][0]、ではありませんv1[30][0]。よくある間違いに気をつけてください。

于 2013-11-09T19:03:01.140 に答える