【发布时间】:2017-10-24 14:04:02
【问题描述】:
上周我们在一项测试中完成了这项任务。 我的答案是“k”(将字母递增 2 次,迭代 5 次)。 当我在 IntelliJ 中运行它时,我得到“c”。 老师告诉我们它是“h”。 我感到完全失落。有人介意向我解释一下吗?谢谢!
public class main {
public static void main(String[] args) {
char a = 'a';
for (int i = 0; i <= 5; i++) ;
a++;
++a;
System.out.println(a);
}
}
【问题讨论】:
-
查看 for 语句后的
;,然后思考循环体中包含的内容。 -
a++ = b, ++a = c 因此你会看到 c。如果你删除分号,那么你会在输出中得到 h。
-
这实际上应该打印
c,因为增量不在循环内。 -
除非老师有不同的代码sn-p,否则他错了。正如许多人提到的那样,它是
'c'。