有以下两个不同参数类型的函数
static double f(double x, float y){
return x+y;
}
static double f(float x, float y){
return x*y;
}
当调用时
一般来说,CPU处理单精度浮点数float的速度比处理双精度浮点数double快
System.out.println(f(10,10)); //100.0
System.out.println(f(10f,10)); //100.0
System.out.println(f(10.0,10)); //20.0
System.out.println(f(10.0,10f)); //20.0
因为如果不声明,默认小数为double类型,所以如果要用float的话,必须进行强转
//浮点数不能完全精确的表示出来,一般会损失精度
System.out.println(3*0.1); //0.30000000000000004
System.out.println(3*0.1 == 0.3); //false;