您的位置:首页 > 其它

自己对于IEnumerable接口的理解

2017-09-19 10:08 253 查看
IEnumerable在开发中的使用主要体现在foreach,只是我们从不去深究它。

使用foreach时,如果我们遍历的对象没有对GetEnumerator()的定义,则foreach报错。

例如如下的类,实现了GetEnumerator()后,我们可以自定义自己的逻辑来实现数据的遍历。

class BuddyClass:IEnumerable

        {

            private string[] str = new string[] { "Jesse", "Jesse2", "Jesse3", "Jesse4", "Jess5" };

            public IEnumerator GetEnumerator()

            {

                foreach (var item in str)

                {

                    yield return item;

                }

            }

        }

BuddyClass by = new BuddyClass();

            foreach (var item in by)

            {

                str.Append(item);

            }
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: