java - 如何将数学答案四舍五入到小数点后 5 位

标签 java decimal rounding

我已经编写了一个java程序,它完全按照预期执行,但是,答案需要四舍五入到小数点后5位。

我在谷歌上搜索了很多,但我看到的每一篇文章都有双重输入。这是一个需要四舍五入的 sumArea 答案。

public class COSC_HW13
{
    // Main method
    public static void main(String[] args) 
    {
    // Create an array of four objects
    GeometricObject[] array = {new Circle(5), new Circle(8),
    new Rectangle(3, 4), new Rectangle(4, 2)};

    // Display results
    System.out.println("Total area of elements in array: " 
            + sumArea(array));
    }

    // Returns the sum of the areas of 
    //all the geometric objects in an array
    public static double sumArea(GeometricObject[] a) 
    {
        double sum = 0;
        for (int i = 0; i < a.length; i++) 
        {
            sum += a[i].getArea();

        }
        return sum;
    }

}

最佳答案

您可以使用java.text.DecimalFormat 中的DecimalFormat 类。以下是您需要执行的操作:

  1. 导入DecimalFormat:导入java.text.DecimalFormat
  2. 设置 DecimalFormat 对象:DecimalFormat df = new DecimalFormat("#.#####");
  3. 使用该对象来格式化您的号码:df.format(sumArea(array))

例如,df.format(5.123456) 将返回 5.12346,因为 5 四舍五入为 6。

关于java - 如何将数学答案四舍五入到小数点后 5 位,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58582797/

相关文章:

c - C中的奇怪舍入

java - 为什么 jBehave 中的复合步骤不首先执行前置条件?

java - 如何在 Java 中创建一个包含其他数组数据的新数组?

java - Spring Web Flow的<set>元素中的 "value"属性包含什么?

sql - 何时在sql server中使用Money数据或Decimal数据类型来存储成本值?

R中舍入单位的舍入数

python - 将数字拆分为四舍五入的数字

java - 单击了哪个按钮。 Java、Netbeans

java - 十进制转二进制java程序

Mysql存储函数返回错误值