for和foreach的区别
答案:1 悬赏:20 手机版
解决时间 2021-01-17 13:51
- 提问者网友:绫月
- 2021-01-16 13:37
for和foreach的区别
最佳答案
- 五星知识达人网友:冷風如刀
- 2021-01-16 15:02
for和foreach有本质的区别
foreach的具体过程是由目标对象控制的
所以并非集合内容更改了就不可以使用foreach
而是Array和Collection对象如此实现了它而已
你却可以完全按照自己的想法去实现这一过程
也许你可以去翻一下Gof的Visitor模式,foreach看起来就是它的简化版本
我们应该把foreach当作一种设计模式而不是简单的一个循环语句去理解
目前C#里的foreach是以IEnumerable的方式去实现,这只是保留COM的实现方式,这种方式我认为其实不太便于理解
我想如果存在一个IForEachable其成员为ForEach(..),这样可能更能让人容易明白
foreach的具体过程是由目标对象控制的
所以并非集合内容更改了就不可以使用foreach
而是Array和Collection对象如此实现了它而已
你却可以完全按照自己的想法去实现这一过程
也许你可以去翻一下Gof的Visitor模式,foreach看起来就是它的简化版本
我们应该把foreach当作一种设计模式而不是简单的一个循环语句去理解
目前C#里的foreach是以IEnumerable的方式去实现,这只是保留COM的实现方式,这种方式我认为其实不太便于理解
我想如果存在一个IForEachable其成员为ForEach(..),这样可能更能让人容易明白
我要举报
如以上回答内容为低俗、色情、不良、暴力、侵权、涉及违法等信息,可以点下面链接进行举报!
点此我要举报以上问答信息
大家都在看
推荐资讯