Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/395.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java将一个向量放入另一个向量_Java_Vector_Copy_Clone - Fatal编程技术网

Java将一个向量放入另一个向量

Java将一个向量放入另一个向量,java,vector,copy,clone,Java,Vector,Copy,Clone,当我使用这些行时: vector.set(i, copyedVector.clone()); vector holds Vector<String> copyVector holds strings vector.set(i,copyedVector.clone()); 矢量保持矢量 copyVector保存字符串 当我使用克隆时,它会给我一个错误。但当我删除克隆时,它工作正常。如何将一个向量复制到另一个向量中?不确定这是否正是您所要求的,但如果要复制所有元素,可以使用add

当我使用这些行时:

vector.set(i, copyedVector.clone());

vector holds Vector<String>

copyVector holds strings
vector.set(i,copyedVector.clone());
矢量保持矢量
copyVector保存字符串

当我使用克隆时,它会给我一个错误。但当我删除克隆时,它工作正常。如何将一个向量复制到另一个向量中?

不确定这是否正是您所要求的,但如果要复制所有元素,可以使用addAll方法并传递向量以将元素复制到其中:

试试这个

vector.set(i, new Vector().addAll(copyedVector));

正如其他人指出的,不清楚“vector”变量是向量向量向量(
vector
)还是字符串向量(
vector
)。请参阅下面的代码片段

Vector<String> destVector = new Vector<String>();
Vector<String> sourceVector = new Vector<String>();
sourceVector.add("A");
sourceVector.add("B");
sourceVector.add("C");
destVector.addAll(0,sourceVector);

// If your target vector is a vector of vectors (of strings)
Vector<Vector<String>> destVector2 = new Vector<Vector<String>>();
destVector2.set(0,(Vector<String>)sourceVector.clone());
Vector destVector=新向量();
矢量源矢量=新矢量();
sourceVector.add(“A”);
sourceVector.add(“B”);
sourceVector.add(“C”);
destVector.addAll(0,sourceVector);
//如果目标向量是(字符串)向量向量
Vector destVector2=新向量();
destVector2.set(0,(Vector)sourceVector.clone();

另外,请注意,
clone
方法返回一个
对象
。因此,您必须显式转换为所需的数据类型。

试试这个。自己向向量添加数据

Vector<T> vector1 = new Vector<T>();
Vector<T> vector2 = new Vector<T>();

vector1.addAll(vector2);
vector1=新向量();
向量向量2=新向量();
矢量1.addAll(矢量2);

从您所说的内容来看,
向量中的每个元素都包含一个
向量
字符串
s?如果你是
Vector
实际上只是一个你应该使用的
String
列表,它会将每个元素从源
Vector
复制到这个列表中…?仅供参考,你最好使用不同的集合类型,而不是
Vector
(例如
ArrayList
)。看见