我正在尝试创建一个 Planet 类,我想将行星的速度、加速度、位置设置为默认值。我有 setter 函数来做到这一点,但他们期望一个双数组。将数字列表作为参数传递会非常方便,因为我不想每次初始化一个新行星时都创建一个零数组。
嗯,总而言之,我想默认做这样的事情:
public Planet(){
dimension = 3;
mass = 1;
acceleration = new double[dimension];
velocity = new double[dimension];
location = new double[dimension];
this.setLocation({0,0,0}); // Is this possible?
this.setVelocity({0,0,0}); // ?
this.setAcceleration({0,0,0}); // ?
}
我的 setter 看起来像这样:
public void setVelocity(double[] velocity){
for(int i = 0; i < dimension; i++){
this.velocity[i] = velocity[i];
}
}
我对 Java 相当陌生,也许这是可能的,但我自己找不到解决方案。在 C++ 中,这可以通过初始值设定项列表来实现,但 Google 搜索表明 Java 没有这样的列表。
最佳答案
在 Java 中,所有数组都已预先初始化(与 C/C++ 相比),因此当您创建 double 组时
velocity = new double[dimension];
您已经使用以下值对其进行了初始化
{ 0.0, 0.0, 0.0, ... }
如果您需要为每个元素分配一些其他值,您可以使用 Arrays#fill()
方法。
关于java - 将 double 列表作为数组传递给需要 double 组的函数 - Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46876933/