简单实现Where内部原理

    public static class WhereExtions
    {
        public static IEnumerable<T> LsWhere<T>(this IEnumerable<T> lists, Func<T, bool> func)
        {
            var list = new List<T>();
            foreach (var item in lists)
            {
                if (func(item))
                {
                    list.Add(item);
                }

            }
            return list;
        }

        public static IEnumerable<T> LsWhere2<T>(this IEnumerable<T> lists, Func<T, bool> func)
        {
            foreach (var item in lists)
            {
                if (func(item))
                    yield return item;
            }
        }
    }

  

posted @ 2022-02-13 00:58  含泪拒绝王阿姨i  阅读(38)  评论(0)    收藏  举报