Java 创建向量数组副本以进行进一步修改的方法

Java 创建向量数组副本以进行进一步修改的方法,java,arrays,Java,Arrays,我正在创建我自己的向量类,它能够执行许多不同的计算。然而,我似乎遇到了一个障碍。我有一些方法,比如排序、标量加法/乘法和反转方法,我需要执行这些方法,但是我想先创建向量的副本,以便修改它。 这是我的代码,仅以排序方法为例: Vector vector = new Vector(length); for (int i = 0; i < length - 1; i++) { for (int j = i + 1; j < length; j++){

我正在创建我自己的向量类,它能够执行许多不同的计算。然而,我似乎遇到了一个障碍。我有一些方法,比如排序、标量加法/乘法和反转方法,我需要执行这些方法,但是我想先创建向量的副本,以便修改它。 这是我的代码,仅以排序方法为例:

    Vector vector = new Vector(length);

    for (int i = 0; i < length - 1; i++) {
        for (int j = i + 1; j < length; j++){
            if (vector.elements[i] > vector.elements[j]) {
                long temp = vector.elements[i];
                vector.elements[i] = vector.elements[j];
                vector.elements[j] = temp;
            }
        }
    }
    return vector;

您只需要一个复制构造函数,即
Vector(Vector other)

  • 使用
    this.sum=other.sum分配所有标量字段
    
  • 使用以下命令分配数组字段:

    this.elements = Arrays.copyOf(other.elements, other.elements.length);
    

(不清楚为什么需要
length
字段,因为
elements.length==length
-只需使用
元素。length

length
似乎是模板的一部分:非常感谢您的回答!
this.elements = Arrays.copyOf(other.elements, other.elements.length);