当前位置:网站首页>关于Linq语句
关于Linq语句
2022-04-21 18:02:00 【迷~麟】
Linq语句是一组方法,允许以最少的代码对集合执行筛选、排序和分组操作。Linq代表语言集成查询。它是一组基于将查询功能集成到C#语言中的技术的名称。虽然Linq方法不是语言集成的,但是还有一个声明性的、语言集成的查询snytax。
数组
最基本可枚举项是数组,它可以存储固定数量的类型化元素。
int[] numbers = new int[3] { 1, 2, 3};
上面的代码中创建了一个容纳了3个值的整数数组,并用值1、2和3初始化该数组。将该数组分配给int[]类型的变量命名为numbers。可以通过索引或枚举值来访问数组的每个元素。
int fistNumber = numbers[0]; //1
foreach( int number in numbers){Console.WriteLine(number); // 1,2,3}
列表
一种常见的枚举类型是列表,与数组不同,列表的大小是可变的。
var number = new list<int>{1,2,3};
上面的例子中,创建了一个整数列表,并用三个值1,2,3初始化它。使用关键字var来定义数字的类型。使用var,我们让编译器决定使用哪种类型。当我们将List<int>类型的对象分配给数字时,变量的类型将是List<int>。同样可以访问这些值索引它们同样可以枚举。
var FirstNumber = number[0]; //1
froeach(var numbers in number){
Console.WriteLine(numbers); // 1,2,3
}
集合
集合包含唯一的元素,例如,HashSet类提供高性能的集合操作(例如UnionWith、IntersectWith等)
var number = new HashSet<int>{1,2,3}
与前面2个数组和列表不同的是,你无法通过集合的索引访问集合的元素。哈希集中没有元素索引这样的概念。但是,仍然可以枚举存储在集合中的值。
foreach( int number in numbers){Console.WriteLine(number); //1,2,3}
虽然所有可枚举类型都有不同的目的和方法,但它们有一个共同的特点。它们都实现了相同的接口,即IEnumerable<T>,Net中,C#中有一个声明性语言结构,使处理枚举项变得容易,比如上面的foreach循环。
另外注意的事项:接口IEnumberable<T>是一个通用接口。这意味着枚举是强类型的,但可以在代码中定义具体类型。强类型意味着它只能保存指定类型的元素(或可以隐形转换该类型的元素)。T是模板类型,是指定类型的放置顺序。
类型列表<T>也是泛型类型。该列表可用于任何类型(<T>)。但是,你必须在代码中选择固定类型。例如<int>(整形列表)是IEnumerable<int>(整数可枚举)可以向列表中添加int值。你还可以向列表中添加字节值(因为它们可以自动转换为int,即隐形转换,而不会丢失)。但是,不能向列表中添加字符串或长值。前者根本无法装换为整数,后者可以转换为整数,但可能会丢失数据,而且这永远不会自动完成。
过滤数据
在许多情况下,必须过滤数据集,数据集是对象的集合(IEnumerable<T>),攀登谓词是一个表达式或函数,可以决定是否保留某个项。如果谓词匹配,则保留该项。如果没有,你就试着把它赶走。下面的例子:从数字列表中只保留正值。过滤数据的第一种方法是创建一个新的空列表,然后对数字进行枚举,并将正值添加到新列表中。


上面成功创建了一个过滤方法KeepositiveNumbers,在这个方法中,我们可以传递一个任意数字列表作为输入,而只得到一个正数列表。该方法接受任何IEnumerable<int>,因此该方法使用实现IEnumerable<T>接口的数组、列表或其他数据结构。待补充。。
版权声明
本文为[迷~麟]所创,转载请带上原文链接,感谢
https://blog.csdn.net/weixin_44591600/article/details/124268444
边栏推荐
- Logstash ~ filter of logstash
- Logstash ~ output of logstash
- 接口测试框架实战(二)| 接口请求断言
- C ODBC loads the files of one folder into the blob column of PostgreSQL database and downloads the blob column to another folder
- Graphic drawing in MATLAB
- The application of new technologies has opened the second path of industrial Internet
- Introduction to MySQL ODBC driver
- Logstash ~ configuration file of logstash
- Logstash ~ multiple inputs and outputs of logstash
- Akismet插件教程WordPress阻止过滤垃圾邮件插件
猜你喜欢

Is it really safe to outsource model training? New research: outsourcers may implant backdoors to control bank lending

终于有人讲明白了!原来这才是全球低时延一张网技术

Look at how the technology house saves Xueba machine. I repaired my laptop with 10 yuan

头条自媒体运营秘籍,坚持下去你就可以打败90%的人

【论文精读】Perception-based seam cutting for image stitching

Beijing quasi GPS Beidou satellite timing system helps South Asia electronic production management system

为什么switch里的case没有break不行

京准GPS北斗卫星校时系统助力南亚电子生产管理系统

看完这篇教程,你将拥有自己的一个卫星(diy全程详解)

Mysql database common sense storage engine
随机推荐
Finally someone made it clear! It turns out that this is the global one-piece network technology with low delay
使用K3S创建本地开发集群
Is qiniu financial management useful? Is it safe?
【最佳实践】巡检项:对象存储(COS)存储桶公有读写
京准GPS北斗卫星校时系统助力南亚电子生产管理系统
[AI and food] a review paper on the latest "dietary assessment based on visual analysis" by the Institute of computing, Chinese Academy of industry and Commerce
【acwing】166. 数独****(DFS)
Overview: the future of CFD
Chest X-ray images - dataset
Akismet插件教程WordPress阻止过滤垃圾邮件插件
LogStash~LogStash的配置文件
Look at how the technology house saves Xueba machine. I repaired my laptop with 10 yuan
国泰君安安全吗?靠谱嘛
AI+临床试验|拜耳探索创建“虚拟”对照组
终于完成学生时代的梦想-制作掌机用单片机STM32手把手教你
numpy. Ndarray does not support logical operations
There is a prize for essay | a heavy prize of 5000 yuan. You are invited to contribute
Oceanbase 和 TiDB 粗浅对比之 - 执行计划
将模型训练外包真的安全吗?新研究:外包商可能植入后门,控制银行放款
看看项目经理是如何把一个项目带崩的