我正在尝试克隆一个数组并作为对象而不是数组类型返回。
ž
public IntVector clone()
{
IntVector cloneVector = new IntVector(3);
int[] newItems = new int[10];
for(int i=0 ; i<itemCount_; ++i)
{
newItems[i] = items_[i];
}
cloneVector = newItems; // is there a way to do something like this??
return cloneVector;
}
主要方法如下
public static void main(String[] args)
{
IntVector vector = new IntVector(5);
vector.push(8);
vector.push(200);
vector.push(3);
vector.push(41);
IntVector cloneVector = vector.clone();
}
*还有另外两个方法可以创建数组:IntVector()并将值放入array:push()
最佳答案
为IntVector
声明一个新的构造方法,该方法使用一个int数组和一个计数:
IntVector(int[] data, int n) {
items_ = data.clone();
itemCount_ = n;
}
然后,您可以像这样编写克隆:
public IntVector clone() {
return new IntVector(items_, itemCount_);
}
您可以根据需要将其构造为
private
,因此只有clone
可以使用它。关于java - 如何在Java中将数组放入对象中?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/12445219/