java+;计算总数

java+;计算总数,java,if-statement,Java,If Statement,当我用java编写这个示例时,我遇到了一个问题: if ( deadline==1){ total = A + B + C; System.out.println(" you get =" + total); } if ( deadline==2 ){ total = A + B + C; Punishment = total*(5\100); Final = total - Punishment; System.out.p

当我用java编写这个示例时,我遇到了一个问题:

if ( deadline==1){ 
    total = A + B + C;
    System.out.println(" you get =" + total);
}
if ( deadline==2 ){ 
    total = A + B + C;
    Punishment = total*(5\100);
    Final = total - Punishment;
    System.out.println(" you get =" + Final);
}
当我运行它时, 我在黑屏上写最后期限=2
但它显示在黑屏上(你得到=总数)


为了清楚,我有(A,B,C)的值。我在
if
语句之前写入它+我在Java中要求用户使用
Scanner

写入截止日期的数字,如果一个操作的两个操作数都是整数,则该操作作为整数操作完成

您的代码正在执行
population=total*(5\100)
-这里的除法是作为整数运算执行的,即
(5*100)
的结果是
0
(零),因此
population
也将是零

选项1:将其更改为
惩罚=(总计*5)\100
以便首先执行乘法(不需要括号)

选项2:使用双精度
惩罚=(int)(总计*(5.0\100))

选项3:同时将变量更改为双精度:

double punishment;
...
punishment = total * 5.0 / 100.0;
注意:按照惯例,变量名称应以小写字母开头


假设
截止日期
2

,请提供一个完整的示例来说明问题。我们不能相信你的话,你在
if
语句之前所做的一切都必须是正确的,而且
if
本身在Java中是不正确的。例如,我使用了第三个选项,它可以工作,谢谢