WEB开发网
开发学院软件开发C语言 c#扩展方法奇思妙用变态篇二:封装 if/else、swit... 阅读

c#扩展方法奇思妙用变态篇二:封装 if/else、swith/case及while

 2010-09-30 20:46:12 来源:WEB开发网   
核心提示: 扩展方法中的If可以使用点“.”链起来,称之“链式编程”,c#扩展方法奇思妙用变态篇二:封装 if/else、swith/case及while(2),请参见我我随笔《c#链式编程》,常规代码和使用扩展方法写的代码都在上面,大家比较一下吧,使用If扩

扩展方法中的If可以使用点“.”链起来,称之“链式编程”,请参见我我随笔《c#链式编程》。

常规代码和使用扩展方法写的代码都在上面,大家比较一下吧。

使用If扩展的代码中用了lambda表达式,如果前面的“p=>p.”能去掉的话,看起来就比较舒服了!编译器通过类型及上下文推演,应该可以做得到吧!

给出People类如下:

People类

        public class People
        {
            public string Name { get; set; }
            public bool IsHungry { get; set; }
            public bool IsThirsty { get; set; }
            public bool IsTired { get; set; }
            public int WorkCount { get; private set; }

            public void Eat()
            {
                Console.WriteLine("Eat");
                IsHungry = false;
            }
            public void Drink()
            {
                Console.WriteLine("Drink");
                IsThirsty = false;
            }
            public void Rest()
            {
                Console.WriteLine("Rest");
                IsTired = false;
            }
            public void Work()
            {
                Console.WriteLine("Work");
                IsHungry = IsThirsty = IsTired = true;
                WorkCount++;
            }
        }

上一页  1 2 3 4 5 6  下一页

Tags:扩展 方法 奇思

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接