• C# List应用 Lambda 表达式


    参考链接 : https://blog.csdn.net/wori/article/details/113144580

    首先 => 翻译为{ }

    然后没有然后

    主要基于我工作中常用的几种情况,写个小例子:

    这个Java叫实体类,C#不知道叫啥

     public class Zoo
    {
      public int ID { get; set; }
      public string Name { get; set; }
      public string Type { get; set; }
      public int Location { get; set; }
      public float Money { get; set; }
    
      public Zoo(int iD, string name, string type, int location, float money)
      {
          ID = iD;
          Name = name;
          Type = type;
          Location = location;
          Money = money;
      }
    }
    

      然后测试几种情况:

    static void Main()
    {
    
      List<Zoo> lists = new List<Zoo>();
      Zoo z = new Zoo(001, "tiger", "Tiger", 21, 50);
      Zoo z1 = new Zoo(002, "tiger1", "Tiger", 21, 20);
      Zoo z2 = new Zoo(003, "tiger3", "Tiger", 21, 30);
      Zoo z3 = new Zoo(004, "tiger4", "Cat", 22, 40);
      Zoo z4 = new Zoo(005, "cat", "Cat", 22, 70);
      Zoo z5 = new Zoo(006, "lion", "BigStone", 20, 40);
      lists.Add(z);
      lists.Add(z1);
      lists.Add(z2);
      lists.Add(z3);
      lists.Add(z4);
      lists.Add(z5);
    
      //挑出其中的符合要求的:我这里写死要求为3、4、5
      List<Zoo> tigers = lists.FindAll(x =>x.ID>2&&x.ID<6);
      foreach (var item in tigers)
      {
          Console.WriteLine(item.ID+"\t"+item.Name);
      }
    
      //挑出符合要求且返回新集合,此处测试返回string列表
      //Where 中为bool类型表达式
      //Select 中为需要的形式: 如下面要返回Zoo,而不是string, 则 Select(e=>e)
      //最后的ToList是确定返回类型,根据实际需要
      List<string> zoos = lists.Where(x => (x.Money + 10) < 70).Select(e=>e.Name).ToList();
      foreach (var item in zoos)
      {
          Console.WriteLine(item);
      }
      
      //返回单个符合要求的
      Console.WriteLine(lists.Find(x => x.Money==40 && x.Name.Contains("ger")).Type);
    }
    

    结果:

      3    tiger3
      4    tiger4
      5    cat
      tiger
      tiger1
      tiger3
      tiger4
      lion
      Cat
    
  • 相关阅读:
    ARRAYLIST使用方法
    学习如何把数据库数据提取为XML(转)
    jquery常用技巧及常用方法列表
    邮件发送
    DataSet/XMl相互操作
    jquery Tab效果和动态加载
    Ajax 显示XML
    dropdownlist动态数据绑定
    sql 拼接
    javascriptxmlxslt操作
  • 原文地址:https://www.cnblogs.com/FlyonGrass/p/15892302.html
Copyright © 2020-2023  润新知