繁体   English   中英

如何舍入浮点数但保持浮点数(即不将其转换为int)?

[英]How do I round a float but keep it a float (i.e. without converting it to int)?

例如,我有一个圆形面积= 4.3的结果,我的问题是'当我得到的数字大于.5时[例如(4.6,4.7,4.8,4.9)],我希望它给我5.0,但如果小于.5 [4.4,4.3,4.2,4.1]然后告诉我4.0'

我尝试过Math.round()但它像[4]一样将float转换为int,但是我不想将其转换为int

有没有办法做到这一点?

这是我的代码:

private float radius;
private double result;

public void show(float x)
{
    this.radius = x;
    this.result=Math.pow(x,2)*Math.PI;

    System.out.println("result is: "+result);
}

显然,我要在一个函数中同时使用method(Math.floor())和(Math.ceil())

Math.rint可能最接近您要寻找的内容。 请注意,它四舍五入为偶数

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM