0

私は python プログラマーですが、現在、アイデアを得るために Java コードを読んでいます。私は Java でのプログラミング経験がまったくないので、それがどのように可能かはわかりませんが、Google を使用してこれらの関数に関する情報を得ることができませんでした。

if(pv.size() -2 < j)
     pv.add(j+1, localpv.get(j));
else
     pv.set(j+1, localpv.get(j));

これは解読する必要があるコードです。pvlocalpvは両方ともベクトルであり (Python のリストと同等だと思いますか?)、何かが追加されます。そのうちの 1 つがベクトルの特定の位置 ( ) にそれらを追加していると推測できますがj+1、もう 1 つが何をしているのかわかりません。

これらの 2 行について説明していただけますか。また、Python でこれらが何に相当するかを教えていただけますか?

4

4 に答える 4

3

add 指定された要素を指定された位置に挿入します

set は指定された位置の要素を置き換えます

于 2012-10-07T19:22:17.010 に答える
2

JavaDoc をチェックアウトhttp://docs.oracle.com/javase/6/docs/api/java/util/Vector.html

add は、他のすべてのオブジェクトを 1 つ後ろに移動した位置にオブジェクトを挿入します。set は、その場所にある現在のオブジェクトを上書きします。

于 2012-10-07T19:21:35.670 に答える
2

API リファレンスですべてのJava メソッドの定義を調べることができます。

Vector.add(int index, E element)

この Vector の指定された位置に、指定された要素を挿入します。

Vector.set(int index, E element)

この Vector 内の指定された位置にある要素を、指定された要素に置き換えます。

同等の Python コードは次のようになります。

if len(pv) - 2 < j:
     pv.insert(j+1, localpv[j])
else:
     pv[j+1] = localpv[j]
于 2012-10-07T19:23:54.890 に答える
0

最初のものは j+1 の位置に新しい要素を追加し、もう 1 つは既存の j+1 の位置の値を指定された値で設定します。

作成者は、リスト (ベクトル) の存在しない要素の値を設定しようとしないことを確認したかったと思います。

于 2012-10-07T19:20:30.130 に答える