一、截尾和舍取
对于float传int,什么时候会舍弃小数,什么时候会将小数进位?
如何使用代码,从而达到准确控制舍弃与进位呢?
答案:使用函数:Math.round(float f);
如下code:
public class HelloWorld {
public static void main(String[] args) {
System.out.println("My Logic keyBoard!");
float above = 0.6f;
float below = 0.4f;
System.out.println("f2i above: "+(int)above+", below: "+(int)below);
System.out.println("f2i Math.Rund above: "
+Math.round(above)+", below: "+Math.round(below));
}
}
输出如下:
My Logic keyBoard!
f2i above: 0, below: 0
f2i Math.Rund above: 1, below: 0
总结:
从上面可以看出,float传int会有精度的丢失;此外,小类型和大类型运算时,结果位大类型。