web-dev-qa-db-ja.com

javaでベクターを文字列配列に変換する方法

Javaで文字列を持つベクターを文字列配列に変換するにはどうすればよいですか?

17
jijo thomas

Vector.toArray(new String[0]) を試してください。

追伸Vectorを優先してArrayListを使用している理由はありますか?

26
NPE
_Vector<String> vector = new Vector<String>();
String[] strings = vector.toArray(new String[vector.size()]);
_

正しいサイズの配列new String[vector.size()]をメソッドに渡す方が効率的です。この場合、メソッドはその配列を使用するためです。 _new String[0]_を渡すと、その配列は破棄されます。

これは javadoc これを説明する抜粋です

パラメーター:
a-このリストの要素が格納される配列(十分に大きい場合)。それ以外の場合は、同じランタイムタイプの新しい配列がこの目的のために割り当てられます。

14
Bohemian

最も簡単なメソッドはString [] myArray = myVector.toArray(new String[0]);です

3
mcfinnigan

ここに簡単な例があります

Vector<String> v = new Vector<String>();
String [] s = v.toArray(new String[v.size()]);
3
Pratik

この例を試してください

  Vector token
  String[] criteria = new String[tokenVector.size()];
  tokenVector.toArray(criteria);
1
Murtuza Saifee
0
Mitch

これを試して:

_vector.toArray(new String[0]);
_

編集:私はそれを試してみました、new String[vector.size()]は_new String[0]_より遅いです。 vector.size()について前に言ったことは無視してください。とにかく_String[0]_も短いです。

0
Dorus