日期:2014-05-19  浏览次数:20612 次

奇怪的if else问题
if(receipt != null && receipt.getCode()== 0){ //发送成功,记录到日志中
  logger.info("成功发送到对方手机");
  shortMessage.setState(2);
  shortMessage.setRepresent("发送到对方手机成功");
  messageService.updateMessage(shortMessage); //更新短信状态
  System.out.println("123");
  writeLog(shortMessage);
  System.out.print("hello");
  }else{
  doNext(shortMessage);
  }
为什么执行完if语句的 System.out.print("hello");以后,程序会跳到else语句里去执行doNext()语句呢?
这个是我打断点测过多次的,我也不相信,但就是这样的,找了同事帮忙看,也不明白为什么? 

谁可以帮我解答一下,谢谢。

------解决方案--------------------
肿么可能???

除非你的if else是在循环体内,
走完if继续循环,下一次走的是else,而断点看不出来。。。
------解决方案--------------------
请检查你的运行环境中的class文件是否是最新的java文件编译过去的,如果两个文件版本不同,eclipse在debug的时候是有这样的问题。