问题描述
if(ID());{funcs();}boolean f=ID();if(f){funcs();请问以上这两种代码有什么区别吗。ID()是判断账号密码的方法funcs()是进入1取款、2查询、3转账,功能选择界面的方法为毛我用第一种方法写,密码输错了之后直接就进入功能选择界面了?就是ID()为false的时候,还能执行funcs().如果用第二种,先把ID()的值赋给f,在进入选择语句。就不会出现这种问题了。 这是什么情况?刚学JAVA2个星期, 请各位指教。
解决方案
if(ID()); {funcs();} 此处多了个分号,造成if判断成功后执行了空语句而后面的{funcs();} 则跟if判断没判断的下一执行语句
解决方案二:
if后面的分号去掉!加了分号说明这个if块结束了!下面的{funcs();} 就不是if块里的代码了!北大青鸟的吧!
解决方案三:
if(ID()); {funcs();} 你没看到你if后面直接就是分号吗?意味着有没有密码验证都会执行功能函数。建议你练习的时候,好好的把课本上的例子调通,同时看书的时候,认真的把基本的条件控制语句看懂,不要只是单纯的翻书!
时间: 2024-08-27 18:55:54