簡體   English   中英

在Java中舍入值

[英]Rounding off values in Java

我有一個double變量輸出一些值。 例子:

  • 如果value = 62.42,我想將值四舍五入為62。

  • 如果value = 62.99,我想將值四舍五入為62。

無論小數位是什么,它都應該只顯示整個值。

Math.floor(雙a)
返回小於或等於參數且等於數學整數的最大(最接近正無窮大)double值。

以下兩種情況下均為62

public class Round {
    public static void main(String[] args) throws Exception {
        System.out.println((int)Math.floor(62.99));
        System.out.println((int)Math.floor(62.42));
    }
}

使用Math.floor

或者您可以使用Math.round(Math.floor(double a))

將其轉換為int。 這會將double值截斷為整數部分,丟棄該數字的任何小數部分。

例如。

double d = 1.7;
int i = (int) d; // i = 1

您是否嘗試將此十進制值分配給整數? 像這樣:

int val = value; //where value = 62.42;
double doubleRounded = Math.round(doubleWithDecimals);
double doubleFloored = Math.floor(doubleWithDecimals);

暫無
暫無

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

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