日期:2014-05-18  浏览次数:20686 次

简单的问题,这几天抓基础
关于return的问题,再简单不过了,看下面!
public bool MoveNext()
  {
  if (index < items.Length - 1) { index++; return true; }
  return false;
  }

我的脑海里看到return就是终止允许了,那上面这句如果不符合if里面的条件就相当于什么都没做是吧,如果条件成立,那么index++;我理解的对吗?

------解决方案--------------------
public bool MoveNext() 
返回一个BOOLEN值,按你写法if里如果index是全局变量 还有那么点意义,你的理解基本是对的
------解决方案--------------------
探讨
if (index < items.Length - 1) //条件成立,进行如下语句 

index++; 
return true; 

return false; //这里不加else的这句话,若是执行上面条件执行了,这话还是会执行的,除非return false包含在else里面 

------解决方案--------------------
咋这么多人都理解错误呢?

楼主的理解就是正确的。。
如果不满足括号里的条件,就其他什么都不做,只返回false。
如果满足条件,就index++;并返回true
------解决方案--------------------
咋这么多人都理解错误呢? 呵呵,自己错误在给别人讲!误人呀。

------解决方案--------------------
忍不住了,好多人理解错了
 if (index < items.Length - 1) { index++; return true; } 
return false; 
条件成立返回true,条件不成立返回false,因为return 这个方法就不往下执行了,所以这里不需要else,也感觉不要else程序会好看点
------解决方案--------------------
LZ的理解没问题,其他人不要误人子弟了。