Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/382.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

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/sockets/2.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
Java 是否有任何理由只为1个元素创建数组?_Java_Arrays_Double - Fatal编程技术网

Java 是否有任何理由只为1个元素创建数组?

Java 是否有任何理由只为1个元素创建数组?,java,arrays,double,Java,Arrays,Double,我刚刚找到了这个代码片段,想知道为什么值存储在一个双数组中而不仅仅是一个“普通”双变量中,是否有什么特殊的原因 double[] potentialEnergy = new double[1]; if (potentialEnergy[0] != 0.0) throw new RuntimeException(); 另外,实际上是否存在double的初始值不是0.0的情况,因此需要特别检查 上下文:我最近开始阅读有关图形可视化的内容,并偶然发现了kamada/kawai force

我刚刚找到了这个代码片段,想知道为什么值存储在一个双数组中而不仅仅是一个“普通”双变量中,是否有什么特殊的原因

double[] potentialEnergy = new double[1];

if (potentialEnergy[0] != 0.0)
    throw new RuntimeException(); 
另外,实际上是否存在double的初始值不是0.0的情况,因此需要特别检查

上下文:我最近开始阅读有关图形可视化的内容,并偶然发现了kamada/kawai force directed算法的实现。在那里,从第311行开始,我找到了这3行代码,但没有找到任何理由将其作为数组:

是否有任何理由只为1个元素创建数组

是:如果将其传递到一个方法中,该方法将通过将其放入数组来提供值(而不是通过返回值来提供值,可能是因为它返回其他值)

概括起来:如果您将它提供给一个需要数组的API,即使它只是一个元素数组

另外,实际上是否存在double的初始值不是0.0的情况,因此需要特别检查


不,新分配的数组包含所有位都已关闭的元素(当它是
双精度
数组[或任何其他数值类型的数组,包括
字符
],
布尔型
数组的
,以及引用类型数组的
).

我的猜测是,
potentialEnergy
在代码后面使用,这种用法期望它以数组的形式出现。@Falkeron-谢谢,但既然问题中没有该内容,那么它出现在答案中就没有意义了。