C# List LinQ Lambda 表达式
------------恢复内容开始------------
# 参考链接 : https://blog.csdn.net/wori/article/details/113144580
首先 => 翻译为{ }
然后 Where 中为bool类型表达式再然后 Select 中为需要的形式: 如下面要返回Zoo,而不是string, 则 Select(e=>e)然后没有然后
### 主要基于我工作中常用的几种情况,写个小例子:
这个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
https://www.cnblogs.com/dotnet261010/p/8278793.html
C# List LinQ Lambda 表达式的更多相关文章
- LinQ—Lambda表达式
概述 本篇博客主要解说lambda表达式,在这里将它的来龙去脉,主要是从托付,匿名函数这些方面过度讲的,当然,在讲托付和匿名函数的时候,主要是从Lambda的角度出发讲的,可能它们还具有其他的一些作用 ...
- Ext.ux.grid.feature.Searching 解析查询参数,动态产生linq lambda表达式
上篇文章中http://www.cnblogs.com/qidian10/p/3209439.html我们介绍了如何使用Grid的查询组建,而且将查询的参数传递到了后台. 那么我们后台如何介绍参数,并 ...
- 在Linq to sql 和 Entity framework 中使用lambda表达式实现left join
在Linq to sql 和 Entity framework 中使用lambda表达式实现left join 我们知道lambda表达式在Linq to sql 和 Entity framework ...
- Linq lamda表达式Single和First方法
让我们来看看如何对一个整数数组使用 Single 操作符.这个整数数组的每个元素代表 2 的 1 到 10 次方.先创建此数组,然后使用 Single 操作符来检索满足 Linq Lambda表达 ...
- ASP.NET EF(LINQ/Lambda查询)
EF(EntityFrameWork) ORM(对象关系映射框架/数据持久化框架),根据实体对象操作数据表中数据的一种面向对象的操作框架,底层也是调用ADO.NET ASP.NET MVC 项目会自动 ...
- Linq表达式、Lambda表达式你更喜欢哪个?
什么是Linq表达式?什么是Lambda表达式? 如图: 由此可见Linq表达式和Lambda表达式并没有什么可比性. 那与Lambda表达式相关的整条语句称作什么呢?在微软并没有给出官方的命名,在& ...
- Linq表达式和Lambda表达式用法对比
什么是Linq表达式?什么是Lambda表达式?前一段时间用到这个只是,在网上也没找到比较简单明了的方法,今天就整理了一下相关知识,有空了再仔细研究研究 public Program() { List ...
- 关于Linq中的Lambda表达式中OrderBy的深入理解
起因:就是一段Linq语句,OrderBy里面的i是什么? IQueryable<Student> slist = (from s in EFDB.Student select s). O ...
- entity framework 新手入门篇(1.5)-lambda表达式与linq
在建立好了EF模型之后,先不着急使用它,在使用它之前,你还需要了解两个相关的技术,lambda表达式与linq. 作为微软C#语言中重要的语法糖-lambda表达式与LINQ,本质都是一个方法,以la ...
- Linq To Sql中实现Left Join与Inner Join使用Linq语法与lambda表达式
当前有两个表,sgroup与sgroupuser,两者通过gKey关联,而sgroup表记录的是组,而sgroupuser记录是组中的用户,因此在sgroupuser中不一定有数据.需要使用Left ...
随机推荐
- 限流中间件IpRateLimitMiddleware的使用
前言 IpRateLimitMiddleware(Github: AspNetCoreRateLimit) 是ASPNETCore的一个限流的中间件,用于控制客户端调用API的频次, 如果客户端频繁访 ...
- VLC 播放完毕后自动退出的问题
1.打开设置 2.打开全部显示 3.取消自动退出
- 欢迎 PaliGemma 2 – 来自 Google 的新视觉语言模型
我们很高兴迎来 Google 全新的视觉语言模型 PaliGemma 2,这是 PaliGemma 的一个新版本.与其前代产品一样,PaliGemma 2 使用强大的 SigLIP 进行视觉处理,但在 ...
- Spring Boot中通过RabbitTemplate主动pull(get)消息的例子
import java.util.Properties; import java.util.function.Consumer; import org.slf4j.Logger; import org ...
- IDEA跳转到上一个下一个方法的快捷键
假如一个方法很不规范,写了好几百行,你想去下一个方法,如果用鼠标往下滑,会挺崩溃的.或者有的时候,就是需要一个一个方法往下看,那么IDEA有没有这样方便的快捷键呢?是有的:按住Alt键,再按上/下方向 ...
- 已有docker镜像构建过程分析
转载请注明出处: 1.使用docker history进行分析 docker history 命令用于查看指定镜像的历史层信息,它显示了镜像创建过程中的每一层,包括创建时间.创建者.大小和注释等信息. ...
- SpringBoot 集成Swagger后提通过http://localhost:8001/swagger-ui.html#/访问得不到页面
SpringBoot 集成Swagger后提通过http://localhost:8001/swagger-ui.html#/访问得不到页面: spring boot 集成 swagger2步骤: ...
- SSM或Spring Boot开发中,mapper包中的mapper.xml没有编译到targger中的解决办法
SSM或Spring Boot开发中,mapper包中的mapper.xml没有编译到targger中的解决办法 在pom文件中加入如下配置: <resources> <!-- 编译 ...
- Android Studio中使用Java+OpenGL ES创建Android项目
首先是使用android studio生成空白的模板文件,包含一个MainActivity文件, 在onCreate方法中参照如下注释进行修改: package com.example.wang.an ...
- 网络编程懒人入门(十六):手把手教你使用网络编程抓包神器Wireshark
本文由转转QA刘宝成分享,原题"抓包工具wireshark的使用",下文进行了排版和内容优化. 1.引言 跟网络通信有关的应用场景下(比如Web系统.IM聊天应用.消息推送系统等) ...