springboot中如何让两个double类型数组相乘得内积并保留三位小数
时间: 2023-07-15 22:15:28 浏览: 169
java使double保留两位小数的多方法共2页.pdf
可以使用Java中的BigDecimal类来进行精确计算,并保留三位小数。以下是一个示例代码:
```java
import java.math.BigDecimal;
public class DoubleArrayMultiplication {
public static void main(String[] args) {
double[] array1 = {1.2, 2.3, 3.4};
double[] array2 = {4.5, 5.6, 6.7};
BigDecimal sum = new BigDecimal(0);
for (int i = 0; i < array1.length; i++) {
BigDecimal bd1 = new BigDecimal(Double.toString(array1[i]));
BigDecimal bd2 = new BigDecimal(Double.toString(array2[i]));
sum = sum.add(bd1.multiply(bd2));
}
BigDecimal result = sum.setScale(3, BigDecimal.ROUND_HALF_UP);
System.out.println("The inner product of the two arrays is " + result);
}
}
```
在上面的代码中,我们创建了两个double类型的数组`array1`和`array2`,然后使用BigDecimal类进行精确计算,将每个元素乘起来,然后相加得到内积。最后使用`setScale()`方法来保留三位小数,并使用`ROUND_HALF_UP`舍入模式将结果四舍五入。
阅读全文