自己做了一个Atm机的程序

自己做了一个Atm机的程序

问题描述:

if(ID());
{funcs();}

boolean f=ID();
if(f){
funcs();
请问以上这两种代码有什么区别吗。
ID()是判断账号密码的方法
funcs()是进入1取款、2查询、3转账,功能选择界面的方法
为毛我用第一种方法写,密码输错了之后直接就进入功能选择界面了?
就是ID()为false的时候,还能执行funcs().

如果用第二种,先把ID()的值赋给f,在进入选择语句。就不会出现这种问题了。 这是什么情况?
刚学JAVA2个星期, 请各位指教。

if(ID())[b][color=red]; [/color][/b]
{funcs();}

此处多了个分号,造成if判断成功后执行了空语句
而后面的{funcs();} 则跟if判断没判断的下一执行语句

if(ID());
{funcs();} 你没看到你if后面直接就是分号吗?意味着有没有密码验证都会执行功能函数。建议你练习的时候,好好的把课本上的例子调通,同时看书的时候,认真的把基本的条件控制语句看懂,不要只是单纯的翻书!

if后面的分号去掉!
加了分号说明这个if块结束了!
下面的{funcs();} 就不是if块里的代码了!
北大青鸟的吧!