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 ...
随机推荐
- StarBlog博客Vue前端开发笔记:(2)页面路由
前言 Vue.js 使用虚拟 DOM 处理单页面,然后使用 Webpack 打包.通过上一篇文章的例子,读者也许已经发现,无论语法和写法如何不同,Vue.js 程序打包后都是一个单一的 HTML 文件 ...
- 高中生入门学习c/c++指导
一.c与c++关系 参考图示: 可见,c与c++的基本部分是相同的,会有一些小区别,不妨一起学.DEV-C++能支持C++和C语言编程 二.学习资料网站介绍 1.C语言初阶--手把手教零基础/新手入门 ...
- Debian关闭防火墙命令详解
防火墙是保护计算机系统安全的关键组件.在一些情况下,需要关闭防火墙,以允许特定的应用程序或服务访问网络.在Debian系统中关闭防火墙的方法多种多样,本文将从多个方面对Debian关闭防火墙命令进行详 ...
- Python 在Excel单元格中应用数据条
在Excel中添加数据条是一种数据可视化技巧,它通过条形图的形式在单元格内直观展示数值的大小,尤其适合比较同一列或行中各个单元格的数值.这种表示方式可以让大量的数字信息一目了然.本文将介绍如何使用Py ...
- Gitlab 实现仓库完全迁移
方法一:最快 gitlab用url导入注意事项看图 方法二 首先需要在新的服务服务器上新建一个项目 然后用 Git Bash 执行以下命令 git clone --mirror 项目原代码仓库地址 / ...
- Unity 3D简单使用C#脚本,脚本的生命周期
Unity 3D简单使用 新建项目->层级里右键->创建空对象改名Test 项目里右键创建C#脚本Test 双击脚本Test(所有脚本都会继承MonoBehaviour类),在Start( ...
- [转]基于vue-router的matched实现面包屑功能
原文链接:基于vue-router的matched实现面包屑功能
- Appium Android自动化测试配置
1. 首先需要在Android 手机上安装3个apk文件 https://github.com/appium/appium-uiautomator2-server/releases (2个apk文件) ...
- Spring 注解Annotation代替XML实现零配置
1. 使用Spring注解来注入属性1.1. 使用注解以前我们是怎样注入属性的类的实现: public class UserManagerImpl implements UserManager { p ...
- 利用坦克PWA3快速为应用配置域名:以Gogs为例
全文概述 本文介绍了如何利用坦克PWA3平台快速为Gogs应用配置域名的过程.随着互联网技术的发展,自托管Git服务变得越来越受欢迎,其中Gogs凭借其轻量级和易于安装的特点受到众多开发者的青睐.为提 ...