zoukankan      html  css  js  c++  java
  • lambda表达式对比

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Text;
    using System.Threading.Tasks;

    namespace lambda
    {
    class Program
    {
    static void Main(string[] args)
    {
    Console.WriteLine("传统的委托代码示例:");
    FindListDelegate();
    Console.WriteLine(" ");
    Console.WriteLine("使用匿名方法的示例:");
    FindListAnonymousMethod();
    Console.WriteLine(" ");
    Console.WriteLine("使用Lambda的示例: ");
    FindListLambdaExpression();
    }
    //传统调用委托的示例
    private static void FindListDelegate()
    {
    List<string> list=new List<string>();
    list.AddRange(new string[]{"ASP.NET课程","J2EE课程","PHP课程","数据结构课程"});
    Predicate<string> finPredicate=new Predicate<string>(IsBookCategory);
    List<string> BookCategory = list.FindAll(finPredicate);
    foreach (string str in BookCategory)
    {
    Console.WriteLine("{0} ",str);
    }
    }

    private static bool IsBookCategory(string str)
    {
    return str.EndsWith("课程")?true:false;
    }

    private static void FindListAnonymousMethod()
    {
    List<string> list = new List<string>();
    list.AddRange(new string[] { "ASP.NET课程", "J2EE课程", "PHP课程", "数据结构课程" });
    List<string> bookCategory = list.FindAll(delegate(string str)
    {
    return str.EndsWith("课程")?true:false;
    });
    foreach (string str in bookCategory)
    {
    Console.WriteLine("{0} ",str);
    }
    }

    private static void FindListLambdaExpression()
    {
    List<string> list = new List<string>();
    list.AddRange(new string[] { "ASP.NET课程", "J2EE课程", "PHP课程", "数据结构课程" });
    List<string> bookCategory=list.FindAll((string str)=>str.EndsWith("课程"));
    foreach (string str in bookCategory)
    {
    Console.WriteLine("{0} ",str);
    }
    Console.ReadLine();

    }
    }
    }

  • 相关阅读:
    简单下拉列表的实现
    App Store 加急审核解析
    iOS 封装一个带复制功能的UILabel
    Xcode 控制台打印Unicode字符串转换为中文
    修改系统UITableViewCell的ImageView大小
    iOS SDWebImage实现原理详解
    Mac电脑用终端生成SSH key 访问自己的Github
    MVC与MVVM之间在IOS中的区别
    iOS TabBarItem设置红点(未读消息)
    virtualenv 创建python虚拟环境
  • 原文地址:https://www.cnblogs.com/sunzgod/p/4171710.html
Copyright © 2011-2022 走看看