【发布时间】:2016-10-27 23:07:49
【问题描述】:
假设 x 是一个整数并且已经被初始化为某个值。考虑代码
for (int a = 1; a < 20; a++)
if (x < 0)
x = a;
哪个语句会对 x 的值产生相同的影响?
a.if (x < 0) x = 1;
b.if (x < 20) x = 19;
c.if (x < 0) x = 19;
d.if (x < 20) x = 20;
e.x = 1;
对于这个问题,我对这个问题的要求有点困惑,因为答案不是我所期望的。
我选择了答案选项 b.if (x < 20) x = 19;,因为 19 小于 20,并且插入“x”时其他答案选项为假。这个问题的答案其实是a.if (x < 0) x = 1;。我对为什么答案选择 a. 是答案感到困惑。
【问题讨论】:
-
x 在哪里定义? x是否定义为0?
-
x的值没有给出。
-
哦,我没看到第一行文字。
-
我的困惑是我不确定问题在问什么,我试图解决问题的方法可能是错误的。
-
好吧,如果 x 已被初始化为 5(或任何大于 0 的值) - 那么该语句将永远不会正确。如果它被初始化为小于 0 的值,那么该语句将只计算一次,x 将等于 1。
标签: java variables if-statement for-loop integer