java - Java中如何将数组放入对象中?

标签 java arrays object

我正在尝试克隆一个数组并作为对象返回,而不是数组类型。 z

 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() 并将值放入数组: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/

相关文章:

java - 将多个过滤器应用于 Java 中的 map

arrays - 使用递归交换数组中的相邻元素

c++ - C++ 和 OpenCV 中多个对象的 vector 和原始类型的 vector

Java:A类中的队列

java - 为什么 fill、copy(dstList, srcList)、shuffle、reverse、rotate Collections 类方法只接受 List 作为参数?

java - 在 Android 中写入和读取二进制文件

arrays - 我如何知道数组中元素的值是否已更改?

javascript - 如何从对象中显式释放 JavaScript 对象?

java - 如何实例化像 Class<Foo<T>> 这样的泛型变量?

java - LeetCode Java 两道求和题