kingofsocket 2014-05-03 20:38 采纳率: 0%
浏览 371
已采纳

自己做了一个Atm机的程序

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

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

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

  • 写回答

3条回答 默认 最新

  • iteye_7115 2014-05-04 15:36
    关注

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

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

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥15 用PLC设计纸袋糊底机送料系统
  • ¥15 simulink仿真中dtc控制永磁同步电机如何控制开关频率
  • ¥15 用C语言输入方程怎么
  • ¥15 网站显示不安全连接问题
  • ¥15 github训练的模型参数无法下载
  • ¥15 51单片机显示器问题
  • ¥20 关于#qt#的问题:Qt代码的移植问题
  • ¥50 求图像处理的matlab方案
  • ¥50 winform中使用edge的Kiosk模式
  • ¥15 关于#python#的问题:功能监听网页