Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/django/23.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
Arrays 接受和数组以及值列表的构造函数_Arrays_Vector - Fatal编程技术网

Arrays 接受和数组以及值列表的构造函数

Arrays 接受和数组以及值列表的构造函数,arrays,vector,Arrays,Vector,以下是我应该遵循的说明: 向量类:将实数向量作为一维数组保存。 建造商: (1) 获取一个双精度数组并转换为向量 (2) 将逗号分隔的双精度字符作为列表,并将其转换为向量 package p1; public class Vector { double yourArray[]=new double[4]; public Vector(double yourArray[]){ this.yourArray=yourArray; } } 逗号分隔的双精度列表和双精度数组

以下是我应该遵循的说明:

向量类:将实数向量作为一维数组保存。 建造商: (1) 获取一个双精度数组并转换为向量 (2) 将逗号分隔的双精度字符作为列表,并将其转换为向量

package p1;

public class Vector {

  double yourArray[]=new double[4];

  public Vector(double yourArray[]){
    this.yourArray=yourArray;

  }
}

逗号分隔的双精度列表和双精度数组有什么区别?他们不是一回事吗?如果没有,如何在Vector类中编写此代码?

您的代码需要适应以下两种构造函数调用:

Vector myVector = new Vector(1.0, 2.0, 3.0, 4.0, 5.0, 6.0, 7.0);

如果您可以使用这两种构造函数模式中的任何一种创建
向量
,那么您就赢了。这就是它的要求

您可以使用以下构造函数签名执行此操作:

public class Vector {
  double[] yourArray;

  public Vector(double... yourArray) {
    this.yourArray = yourArray;
  }
}

带有三个点的变量参数模式(“double…yourArray”)实际上在封面下转换为一个数组(“double[]yourArray”)。因此,您可以用一个构造函数来容纳这两种调用模式。

那么,您能否区分
新向量(1.0、2.0、3.0)
新向量(myDoubleArray)
?(假设
myDoubleArray
属于
double[]
类型)什么?我不明白,但如果它在测试类中显示duplicate myVector呢?但我如何用这两个分离的一维数组创建矩阵?在测试类中,您可能声明了两次
myVector
。可以使用多种测试方法,也可以选择不同的变量名。二维矩阵可以由以下
向量
的数组表示:
向量[]aMatrixpublic class Vector {
  double[] yourArray;

  public Vector(double... yourArray) {
    this.yourArray = yourArray;
  }
}