如何将String数组中的所有项添加到Java中的向量中?

时间:2010-03-04 23:57:51

标签: java string arrays vector add

我的代码如下所示:

Vector<String> My_Vector=new Vector<String>();
String My_Array[]=new String[100];

for (int i=0;i<100;i++) My_Array[i]="Item_"+i;
......
My_Vector.addAll(My_Array);

但是我收到了一条错误消息,正确的方法是什么,没有循环添加每个项目?

3 个答案:

答案 0 :(得分:56)

Collections.addAll(myVector, myArray);

这是将数组内容添加到集合(例如矢量)中的首选方法。

https://docs.oracle.com/javase/8/docs/api/java/util/Collections.html#addAll-java.util.Collection-T...-

  

将所有指定的元素添加到指定的集合中。   要添加的元素可以单独指定,也可以指定为数组。该   这种方便方法的行为与   c.addAll(Arrays.asList(elements)),但这种方法可能会运行   在大多数实现中显着更快。

答案 1 :(得分:19)

vector.addAll()接受参数中的Collection。 要将数组转换为Collection,可以使用Arrays.asList():

My_Vector.addAll(Arrays.asList(My_Array));

答案 2 :(得分:6)

My_Vector.addAll(Arrays.asList(My_Array));

如果您注意到,Collection.addAll需要Collection个参数。 Java数组不是Collection,但Arrays.asListCollection.toArray结合使用,是“基于数组和基于集合的API之间的桥梁”。

或者,为了将数组中的元素添加到Collection的特定目的,您还可以使用Collections类中的静态帮助方法addAll

Collections.addAll(My_Vector, My_Array);