LINQ(五) ——使用LINQ进行匿名对象初始化

ops/2024/9/23 14:31:23/

总目录
C# 语法总目录

上一篇:LINQ(四) ——使用LINQ进行对象类型初始化

LINQ 五 ——使用LINQ进行匿名对象初始化

    • 6.2 匿名类型

6.2 匿名类型

可以不用声明定义一个对象,直接使用new,然后直接赋值即可

string[] names = { "Tom", "Jerry", "kate", "Lucy", "Micky", "li" };var query =from n in namesselect new{name = n,liName = n.ToLower()};foreach (var item in query)
{Console.WriteLine(item.liName+","+item.name);
}Console.WriteLine("--------------");IEnumerable<string> strName =from n in querywhere n.name.Length > 2orderby n.name.Length descendingselect n.name + "," + n.liName;foreach (var item in strName)
{Console.WriteLine(item);
}
//输出
tom,Tom
jerry,Jerry
kate,kate
lucy,Lucy
micky,Micky
li,li
--------------
Jerry,jerry
Micky,micky
kate,kate
Lucy,lucy
Tom,tom

使用两个数组,分别取出两个数组元素的索引,进行比较,然后拼接成一个匿名对象,进行输出。

string[] names = { "Tom", "Jerry", "kate", "Lucy", "Micky", "li" ,"zh"};
int[] ages = { 10, 20, 50, 12, 45, 20 };var indexedItems = names.Select((value, index) => new { Index = index, Value = value });var dicar =from n in names.Select((value, index) => new { Index = index, Value = value })join a in ages.Select((value, index) => new { Index = index, Value = value }) on n.Index equals a.Indexselect new{name = n.Value,age = a.Value};foreach (var item in dicar)
{Console.WriteLine($"{item.name},{item.age}");
}
//输出
Tom,10
Jerry,20
kate,50
Lucy,12
Micky,45
li,20

总目录
C# 语法总目录

上一篇:LINQ(四) ——使用LINQ进行对象类型初始化


http://www.ppmy.cn/ops/43873.html

相关文章

汇编原理(二)

寄存器&#xff1a;所有寄存器都是16位&#xff08;0-15&#xff09;&#xff0c;可以存放两个字节 AX,BX,CX,DX存放一般性数据&#xff0c;称为通用寄存器 AX的逻辑结构。最大存放的数据为2的16次方减1。可分为AH和AL&#xff0c;兼容8位寄存器。 字&#xff1a;1word 2Byte…

SpringBoot如何实现跨域?

定义一个配置类&#xff0c;实现WebMvcConfigurer接口&#xff0c;重写addCorsMappings方法 Configuration public class CorsConfig implements WebMvcConfigurer {Overridepublic void addCorsMappings(CorsRegistry registry) {registry.addMapping("/**").allow…

标准库算法

欢迎访问我的博客首页。 标准库算法 1. 查找对象的算法2. 其它只读算法3. 二分搜索算法4. 写容器元素的算法5. 划分与排序算法6. 通用重排操作7. 排列算法8. 有序序 列的 集合算法9. 最 小值和 最大值10. 数值算法11. 参考 Pred 表示返回值为布尔类型的可调用对象。 1. 查找对…

windows服务器安装TortoiseSVN教程

TortoiseSVN也称小乌龟~ 下载链接&#xff1a; https://www.liqucn.com/rj/91608.shtml 下载完成后&#xff0c;先安装TortoiseSVN&#xff0c;安装完成后&#xff0c;根据需要安装中文包 安装比较简单直接下一步即可&#xff0c;注意安装路径根据需要调整到非c盘。 安装中…

java原型模式 (Prototype Pattern) 介绍

原型模式&#xff08;Prototype Pattern&#xff09;是一种创建型设计模式&#xff0c;它通过复制现有的实例来创建新对象&#xff0c;而不是通过实例化类来创建对象。这个模式允许你创建对象时避免复杂的初始化步骤&#xff0c;并且能够动态地创建对象的副本。 原型模式的关键…

Day03—flask与react实现交互(解决跨域问题)

flask &#xff1a;默认的端口为 http://127.0.0.1:5000 react &#xff1a;默认端口为 http://localhost:3000 两个项目运行起来之后&#xff0c;没有实现前后端交互调用 弄了半天&#xff0c;是因为没有给flask 配置跨域 解决办法&#xff1a; pip install flask-cors from …

docker————docker的网络

当你使用容器时&#xff08;以docker为例&#xff09;&#xff0c;容器的通信就变得至关重要。要解决容器的通信问题&#xff0c;必须具备一定的网络基础。Docker有4种网络模式&#xff0c;只有两种是常用的。这4种网络模式分别为bridge&#xff0c;host&#xff0c;none&#…

C#反射的学习,反射的一些注意事项,反射的一些使用代码的实例

C# 中的反射&#xff08;Reflection&#xff09;是一种强大的机制&#xff0c;它允许程序在运行时获取关于类型&#xff08;如类、结构、枚举、委托、接口和数组&#xff09;的信息&#xff0c;并且能动态地创建和使用这些类型。然而&#xff0c;使用反射时需要注意一些性能和安…