簡體   English   中英

如何圍繞數學方程的答案

[英]How to round an answer to a mathematical equation

全部 - 我有一個應用程序,用戶輸入數據,如晚餐賬單的費用和小費百分比和人數。 應用程序比數字和輸出總帳單成本和每個人必須支付的金額。 我幾乎在那里,但當用戶輸入不能正常工作的數字時,我得到的輸出如$ 23.576或$ 34.999999999。 我的問題是如何使應用程序圍繞兩個小數位的兩個輸出答案(55.349美元到55.35美元)? 提前致謝!

String roundTwoDecimals(double d) {
        DecimalFormat formatter = new DecimalFormat("#.##");
        return formatter.format(d);
}

您可以像這樣使用Math.round

    double data = 55.349; // Your data value of whatever

    int decimalPlaces = 2;
    double roundBase = Math.pow(10, decimalPlaces);
    data = (double)(Math.round(data * roundBase)) / roundBase;
    System.out.println(data); // Prints "55.35"

但請記住:在財務應用程序方面,您不應該使用double。 由於你的看起來很小,你應該沒問題,但BigDecimal更容易用於這些目的。

如何使用BigDecimal: clicky

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM