【发布时间】:2014-03-31 19:17:41
【问题描述】:
我很抱歉这个奇怪的标题,我真的不知道如何描述它。基本上我有一个代码,一旦调用 if 语句,它就会改变整数的值,taxrate。我以为它可以工作,但是一旦我尝试在代码的另一部分将它调用到 JTextField 中,它就会显示为 0。IF 语句如下:
if (taxable >= 1 && taxable <= 9075){
taxrate = (int) (taxable * .10);
} else if (taxable >= 9076 && taxable <= 36900) {
taxrate = (int) (taxable * .15 + 908);
} else if (taxable >= 36901 && taxable <= 89350) {
taxrate = (int) (taxable * .25 + 5082);
} else if (taxable >= 89351 && taxable <= 186350){
taxrate = (int) (taxable * .28 + 18195);
} else if (taxable >= 186351 && taxable <= 405100){
taxrate = (int) (taxable * .33 + 45355);
} else if (taxable >= 405101 && taxable <= 406750) {
taxrate = (int) (taxable * .35 + 45883);
} else if (taxable >= 406751) {
taxrate = (int) (taxable * .396);
}
taxable 由用户定义,在用户输入之前没有定义的值。
【问题讨论】:
-
好吧,一方面,整数没有小数。
-
可能的。 0 小于 9075,并且 0 * 0.10 仍然是 0(使用你的演员表,任何数字 >= 0 和
-
@ElliottFrisch 即使我输入 9074 也会发生
-
@engz 如果你输入 9076?
-
@ElliottFrisch 我只是展示了部分代码,我包含了完整的 if 语句。我还做了一点修改,使其高于/等于 1。
标签: java if-statement int