jijo thomas
jijo thomas

Reputation: 337

How to convert Vector to String array in java

How to convert Vector with string to String array in java?

Upvotes: 17

Views: 68405

Answers (7)

NPE
NPE

Reputation: 500277

Try Vector.toArray(new String[0]).

P.S. Is there a reason why you're using Vector in preference to ArrayList?

Upvotes: 26

Bohemian
Bohemian

Reputation: 424993

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

Note that it is more efficient to pass a correctly-sized array new String[vector.size()] into the method, because in this case the method will use that array. Passing in new String[0] results in that array being discarded.

Here's the javadoc excerpt that describes this

Parameters:
a - the array into which the elements of this list are to be stored, if it is big enough; otherwise, a new array of the same runtime type is allocated for this purpose.

Upvotes: 14

Mitch
Mitch

Reputation: 1039

Vector.ToArray(T[])

Upvotes: 0

Dorus
Dorus

Reputation: 7546

Try this:

vector.toArray(new String[0]);

Edit: I just tried it out, new String[vector.size()] is slower then new String[0]. So ignore what i said before about vector.size(). String[0] is also shorter to write anyway.

Upvotes: 0

Murtuza Saifee
Murtuza Saifee

Reputation: 67

try this example

  Vector token
  String[] criteria = new String[tokenVector.size()];
  tokenVector.toArray(criteria);

Upvotes: 1

mcfinnigan
mcfinnigan

Reputation: 11638

simplest method would be String [] myArray = myVector.toArray(new String[0]);

Upvotes: 3

Pratik
Pratik

Reputation: 30855

here is the simple example

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

Upvotes: 3

Related Questions