Как преобразовать вектор в массив строк в Java - PullRequest
17 голосов
/ 21 сентября 2011

Как преобразовать вектор со строкой в ​​массив строк в Java?

Ответы [ 7 ]

26 голосов
/ 21 сентября 2011

Попробуйте Vector.toArray(new String[0]).

PS. Есть ли причина, по которой вы используете Vector вместо ArrayList?

14 голосов
/ 21 сентября 2011
Vector<String> vector = new Vector<String>();
String[] strings = vector.toArray(new String[vector.size()]);

Обратите внимание, что эффективнее передать массив правильного размера new String[vector.size()] в метод, поскольку в этом случае метод будет использовать этот массив. Передача new String[0] приводит к удалению этого массива.

Вот выдержка из javadoc , которая описывает это

Параметры:
a - массив, в котором должны храниться элементы этого списка, если он достаточно большой; в противном случае для этой цели выделяется новый массив того же типа времени выполнения.

3 голосов
/ 21 сентября 2011

Самый простой способ будет String [] myArray = myVector.toArray(new String[0]);

3 голосов
/ 21 сентября 2011

вот простой пример

Vector<String> v = new Vector<String>();
String [] s = v.toArray(new String[v.size()]);
1 голос
/ 21 сентября 2011

попробуйте этот пример

  Vector token
  String[] criteria = new String[tokenVector.size()];
  tokenVector.toArray(criteria);
0 голосов
/ 21 сентября 2011

Попробуйте это:

vector.toArray(new String[0]);

Редактировать: Я только что попробовал, new String[vector.size()] медленнее, чем new String[0]. Так что игнорируйте то, что я сказал ранее о vector.size (). String[0] также в любом случае короче писать.

0 голосов
/ 21 сентября 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...