Javaで文字列を持つベクターを文字列配列に変換するにはどうすればよいですか?
Vector.toArray(new String[0])
を試してください。
追伸Vector
を優先してArrayList
を使用している理由はありますか?
_Vector<String> vector = new Vector<String>();
String[] strings = vector.toArray(new String[vector.size()]);
_
正しいサイズの配列new String[vector.size()]
をメソッドに渡す方が効率的です。この場合、メソッドはその配列を使用するためです。 _new String[0]
_を渡すと、その配列は破棄されます。
これは javadoc これを説明する抜粋です
パラメーター:
a-このリストの要素が格納される配列(十分に大きい場合)。それ以外の場合は、同じランタイムタイプの新しい配列がこの目的のために割り当てられます。
最も簡単なメソッドはString [] myArray = myVector.toArray(new String[0]);
です
ここに簡単な例があります
Vector<String> v = new Vector<String>();
String [] s = v.toArray(new String[v.size()]);
この例を試してください
Vector token
String[] criteria = new String[tokenVector.size()];
tokenVector.toArray(criteria);
これを試して:
_vector.toArray(new String[0]);
_
編集:私はそれを試してみました、new String[vector.size()]
は_new String[0]
_より遅いです。 vector.size()について前に言ったことは無視してください。とにかく_String[0]
_も短いです。