我有一个向量包含x
。将Object[]
作为列表的值,并在其末尾添加y
元素的最优雅方式是什么?最优雅的方式来添加从Java中的矢量不同的对象
x
和y
不是同一类左右。
明显的解决方案将是使一个新的Object[]
用的Vector
+ 1的大小。然后在其上进行迭代,并添加每个x
,然后在末尾添加y
。
此外,
Object[] objectArray = vector.toArray();
会由1
我有一个向量包含x
。将Object[]
作为列表的值,并在其末尾添加y
元素的最优雅方式是什么?最优雅的方式来添加从Java中的矢量不同的对象
x
和y
不是同一类左右。
明显的解决方案将是使一个新的Object[]
用的Vector
+ 1的大小。然后在其上进行迭代,并添加每个x
,然后在末尾添加y
。
此外,
Object[] objectArray = vector.toArray();
会由1
Vector vector= new Vector();
vector.add(x);
Vector temp = new Vector(vector);
temp.add(y);
Object[] objectArray = temp.toArray();
使objectArray
收缩(如果我理解正确的将q ...)
vector.add(myY);
Object[] arr = vector.toArray();
vector.remove(vector.size()-1);
而且你必须如果您不想在任何情况下发生任何意外情况,请在矢量上同步:
synchronized (vector) {
vector.add(myY);
Object[] arr = vector.toArray();
vector.remove(vector.size()-1);
}
Object[] result = new Object[vector.size() + 1];
result = vector.toArray(result);
result[result.length - 1] = y;
这种解决方案并不需要一个临时矢量,而不会修改原始载体。
你可以通过提供一个完整的代码片段来说明这一点。它非常容易混淆,我有2个问题给你1>我没有看到在向量中的任何地方添加了'x',就像指出的那样。做这个部分以及'作为一个Object []'获得列表值的最优雅的方式'。您能提供完整的功能代码片段吗? – Deepak 2011-03-10 11:41:41
@Deepak:代码片段已完成。第一行将所有元素(X实例)复制到新的临时向量中。第二行在临时向量的末尾添加一个y,第三行将包含x和y的临时向量转换为数组。因此制作了两个阵列副本,我发现它们并不那么优雅,但是YMMV。 – 2011-03-10 12:01:14
什么是'矢量'在'矢量温度=新的矢量(矢量);'你能告诉我从哪里'(矢量)'越来越人口。 – Deepak 2011-03-10 13:36:51