為什么最后兩行參數為3.4f,3.4調用round取整都返回3,不應該師加上0.5之后返回4嗎
package com.數字處理類;
public class IntFunction {
?public static void main(String[] args) {
??// TODO Auto-generated method stub
??//返回一個大于等于參數的整數
??System.out.println("使用cell()方法取整:"+Math.ceil(5.2));
??//返回一個小于等于參數的整數
??System.out.println("使用floor()方法取整:"+Math.floor(2.5));
??//返回一個最接近參數的整數
??????? System.out.println("使用rint()方法取整:"+Math.rint(2.7));
??????? //加上0.5之后返回最接近參數的整數
??????? System.out.println("使用round()方法取整:"+Math.round(3.4f));
??????? //加上0.5之后返回最接近參數的long類型
??????? System.out.println("使用round()方法整:"+Math.round(3.4));
?}
}
2020-04-28
?“加上0.5之后返回最接近參數的long類型”這句話的意思就是四舍五入。不用管什么加0.5,不用管什么0.5,把這句話理解為四舍五入就對了。
2018-07-20
查詢API知道:
返回最接近的參數
long
,其中long
四舍五入為正無窮大。特殊情況:
如果參數是NaN,結果為0。
如果參數為負無窮大或小于或等于值
Long.MIN_VALUE
的值,則結果等于值Long.MIN_VALUE
。如果參數為正無窮大或大于或等于
Long.MAX_VALUE
的值,則結果等于值Long.MAX_VALUE
。所以這個方法可以看做是四舍五入