float = 0.0f
double = 0.0
补充
因为你声明的5和2都是int型的变量,所以计算出来的结果也是int型的,int型是整型变量,没有小数部分,所以要把它们声明成浮点数(即小数),例如float=5.0ffloat = 2.0f后边的f表示2.0是float型的单精度浮点数,如果不带f则是默认的double型双精度浮点数。两个float型的数字相除,这样计算的结果也使float型的,所以就会有小数部分出现了
方法一:double myNum2 = 111231.5585478
java.math.BigDecimal b = new java.math.BigDecimal(myNum2)
double myNum3 = b.setScale(5, java.math.BigDecimal.ROUND_HALF_UP).doubleValue()
System.out.println(myNum2)
System.out.println(myNum3)
方法二:
double d = 3.1465926
String result = String.format("%.2f", d)
System.out.println(result)