黑马程序员技术交流社区
标题: 这个题目金典 [打印本页]
作者: Miss.H 时间: 2015-7-9 23:11
标题: 这个题目金典
public static void main(String [] args)
{
int num=100;
if(num ++>100);
{
num =200;
}
System.out.println(num);
}
今天考试就被这题坑了,if语句后面有个逗号,结果直接执行下面语句了
作者: 符慢慢 时间: 2015-7-9 23:18
估计是java前五天的课程
作者: 东东的一些事 时间: 2015-7-9 23:27
那是分号,不是逗号……
作者: huizi1992 时间: 2015-7-9 23:29
这个题目是不错,摘下了!
作者: 人造番茄 时间: 2015-7-10 07:11
这个分号实在是要小心啊
作者: fantianfei 时间: 2015-7-10 07:53
答案是多少,无线循环么?100 101.。。。。。。。。。。。。。。。。。。。。。。。。。。。。
作者: 牵着蜗牛去逛街 时间: 2015-7-10 09:29
答案是200, if(num ++>100);后面有分号{num=200}并不是if条件成立要执行的。
作者: YongBao_Summer 时间: 2015-7-10 09:42
本帖最后由 YongBao_Summer 于 2015-7-10 09:49 编辑
答案是200.中间那个括号改变的也是那个num。不是新的局部变量。Java在函数中是不能存在相同命名的局部变量的。
跟C的命名空间不一样。
作者: zhwfa1991 时间: 2015-7-10 10:02
这个题目不错,一不注意就错了
作者: vinoMVP 时间: 2015-7-10 10:08
。。。这个我自己写代码的时候也遇到过,习惯性输完一句分号结束,之后才找出问题
作者: 官沛 时间: 2015-7-10 10:12
额。。。原来是这里错了。。完全没有注意到!
看来以后这些细节一定要注意!
作者: 加多宝 时间: 2015-7-10 11:27
细节决定成败
作者: 帅帅loyal 时间: 2015-7-10 11:38
好悬,,我也掉进去了
作者: fantianfei 时间: 2015-7-10 11:46
知道了。。
欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) |
黑马程序员IT技术论坛 X3.2 |