我想计算0.95的值。这是我的方法:
public static final int VAR = 5;
private static double getDouble(){
double dis = (double)(VAR/100);
dis = (double)(1-dis);
return dis;
}
然而,它输出1.0 ??如果我在main方法中键入相同的代码,我得到0.95。我的错误在哪里?
答案 0 :(得分:6)
(5/100)
将返回0
,double
将0.0
投放到double dis = (5d/100);
。
只是做:
VAR = 5
由于您已声明double
,因此必须将其强制转换为double dis = ((double) VAR) / 100;
,然后执行除法:
{{1}}