【发布时间】:2015-04-29 20:49:36
【问题描述】:
当我从 startVal 开始递增 DOWN 并以 incVal 结束时,打印 i 的结果时出现问题。
第一个 if 语句打印正确,我认为第二个 else if 语句应该非常相似,但即使我的原始值;对于 EX:如果 startVal = 100、endVal = 10 和 incVal = -1,它会正确跳转到 else if 语句(使用基本打印语句进行测试),但 for loop 似乎不起作用并且不会打印出结果i 应该是这样的。
if ((startVal < endVal) && (incVal >= 1))
{
for (int i = startVal; i <= endVal; i += incVal)
{
System.out.println(i);
}
}
// else if incrimenting down
else if((startVal > endVal) && (incVal <= -1))
{
for (int i = startVal; i <= endVal; i -= incVal)
{
System.out.println(i);
}
}
我在这里搞砸了什么愚蠢的事情吗?我在 for 循环中尝试了不同的方法来让 i 打印,但它不能以正确的方式工作..
【问题讨论】:
-
不确定我是否理解 else/if 和循环的逻辑:如果
startVal > endVal评估为 true,则 i 被初始化为 startVal,它大于 endVal,因此 i
标签: java variables if-statement for-loop increment