[问题] LINQ & IEnumerator

楼主: don750421 (1+1≠2)   2014-11-04 21:04:58
小弟最近在研读LINQ及Lamdba
有个点一直想不通。
因为我是边看书边学...
在书的开头提到可以使用from where select去查询集合内的资料
例如:
List<string> temp = new <string>
{
"Mon","Tue","Wed","Thi","Fri","Sat","Sun"
};
可以透过
IEnumerable<string> test =
from str in temp
where str.StartWith("T")
select
取得所需要的资料。
但是,在第二、三张的又介绍了GetEnumator这个列举器。
这个的作用也是逐一地去查询集合中的每一个元素...
那么跟上述的from where select 有什么差异呢??
什么时候会用到from where select ?
什么时候又会用到 IEnumable的 GetEnumator呢??
麻烦各位前辈指点迷津
谢谢
作者: O187 (187cm)   2014-11-04 21:17:00
好开发,增加可读性
作者: SmartGoose (聪明的鹅)   2014-11-04 23:17:00
LINQ底层应该也是用IEnumable,你就不用自已去操作IEnumable
作者: deuter (Harold)   2014-11-05 12:19:00
你可以试试看把上面的程式用 GetEnumerator 写出来比较看看, 就知道差在哪里了
楼主: don750421 (1+1≠2)   2014-11-05 21:23:00
是因为foreach底层在也是会实作Enumable吗??所以,书上才会列出这部分让读者参考?
作者: moremore1234 (汉生博依)   2014-11-05 23:10:00
你可以看msdn上写的http://ppt.cc/JQ4Q

Links booklink

Contact Us: admin [ a t ] ucptt.com