将double类型的数据,根据小数点值的大小取整
程序员文章站
2022-07-15 10:18:30
...
111
需求:
写出一个程序,接受一个正浮点数值,输出该数值的近似整数值。如果小数点后数值大于等于5,向上取整;小于5,则向下取整。
import java.util.*;
public class Main{
public static void main(String[] args){
Scanner scan = new Scanner (System.in);
while (scan.hasNext()){
double num = scan.nextDouble();
int i = (int)num;
System.out.println((num-i)>=0.5?i+1:i);
}
}
}
int i = (int)num;
(num-i)>=0.5?i+1:i
这样一个判断就很巧妙
项目中实际使用到.
涉及到的知识点:
将double型值,强转为int型时直接舍弃后面的小数,不存在四舍五入
那么就可以根据这一特性, 将强转后的 i 与原数据num相减
来判断余下的小数的大小,就完成了,对double型数值在大于0.5时,向上取整,或者小于0.5时向下取整的情况
参考文档 = https://www.geek-share.com/detail/2701323685.html