lon*_*ome 3 java arrays double min
如何在双精度数组中找到最小的正(非零)数?例如,如果数组包含0.04,0.0001以及0.0,我要回0.0001.
下面的功能很好,但它会以min为单位返回零,这不是我感兴趣的.
static double[] absOfSub = new double[100];
...
private static double compare(double[] ds) {
double min = absOfSub[0];
for (double d : ds) {
min = Math.min(min, d);
}
return min;
}
Run Code Online (Sandbox Code Playgroud)
如何让它忽略零?
你可以检查零:
double min = Double.MAX_VALUE;
for (double d : ds)
{
min = (d == 0) ? min : Math.min(min, d);
}
Run Code Online (Sandbox Code Playgroud)