首页 > 其他分享 >Linq补充学习

Linq补充学习

时间:2024-04-16 20:00:35浏览次数:21  
标签:petOwner Name 补充 IEnumerable Linq 学习 Pets new SelectMany

1.Select 和 SelectMany 方法

SelectMany<TSource,TResult>(IEnumerable<TSource>, Func<TSource,IEnumerable<TResult>>)
将序列的每个元素投影到 IEnumerable 并将结果序列合并为一个序列。

1. 使用 SelectMany<TSource,TResult>(IEnumerable, Func<TSource,IEnumerable>) 对数组执行一对多投影。

    PetOwner[] petOwners =
        { new PetOwner { Name="Higa, Sidney",
              Pets = new List<string>{ "Scruffy", "Sam" } },
          new PetOwner { Name="Ashkenazi, Ronen",
              Pets = new List<string>{ "Walker", "Sugar" } },
          new PetOwner { Name="Price, Vernette",
              Pets = new List<string>{ "Scratches", "Diesel" } } };

    // 使用 SelectMany() 查询
    IEnumerable<string> query1 = petOwners.SelectMany(petOwner => petOwner.Pets);
    // 使用 Select() 查询达到使用 SelectMany() 的查询效果
    IEnumerable<List<String>> query2 =
        petOwners.Select(petOwner => petOwner.Pets);
    //将有1对多关系的两个集合,合并输出为一个集合
    var query3 = petOwners.SelectMany(petOwner => petOwner.Pets, (owner, pet) => new { OwnerName = owner.Name, Pet = pet });
    query3.ToList().ForEach(x => Console.WriteLine($"{x.OwnerName}:{x.Pet}"));

标签:petOwner,Name,补充,IEnumerable,Linq,学习,Pets,new,SelectMany
From: https://www.cnblogs.com/hrx521/p/18138990

相关文章

  • 机器学习分类模型评估实验方法
    需要以下步骤数据完整性约束:检查表是否定义了适当的主键、外键和唯一约束以确保数据的完整性。如果缺少这些约束,可能会导致数据不一致或错误的插入、更新或删除操作。数据一致性:检查表之间的关系是否正确建立,并确保数据在不同表之间的引用是一致的。如果存在不一致性,可能......
  • JAVA语言学习-Day13
    参考教学视频:秦疆JVM概述JVM位置:操作系统之上JVM的体系结构.java->ClassFile->类加载器Classloader<-->运行时数据区RuntimeDataArea<-->本地方法接口<-本地方法库运行时数据区RuntimeDataArea<-->执行引擎方法区:MethodAreaJava栈:Stack本地方......
  • 仿真CST学习
    仿真模型来自于CST创建项目开始创建模型首先创建基底TheactiveFSSstructureismadeofametallicsquareringandasquarepatchetchedonthetopsideofaF4B(εs=2.65andtanδ=0.006)substratewithathicknessoft=0.5mm.活性FSS结构由金......
  • python-函数参数的学习
    '''函数的参数实际上是实际参数传给形式参数的过程通用性更强,可以理解为一个模版'''#defadd(a,b):#a,b是形参#print(a+b)#add(2,3)#传递参数'''1.必选参数,定义了几个,就必须传几个'''#deffunb(a,b):#result=a-b#print(result)#funb......
  • 立创泰山派学习06--TF挂载及测试
    1、关机(poweroff)断电,再插入TF卡2、开机,查看内核日志dmesg|grepmmcdmesg-c(查看并清除内核日志)      或者fdisk-l    3、创建一个目录,用于挂载TF卡sudo mkdir/media/sdcard      或者直接挂载到/mnt/sdcar......
  • SpringBoot+MybatisPlus 增删改查学习第三章 (C#转JAVA)
    packagecom.example.demo;importcom.baomidou.mybatisplus.core.conditions.query.QueryWrapper;importcom.example.demo.entity.Person;importcom.example.demo.mapper.PersonMapper;importcom.example.demo.service.PersonService;importorg.junit.jupiter.api.Test;i......
  • 后缀数组 学习笔记
    理论知识详见OIWiki。模板后缀排序一切有关后缀数组问题的必备板子。求后缀数组模板题,OIWiki有详解。点击查看代码#include<bits/stdc++.h>#defineintlonglong#defineendl'\n'#definesortstable_sortusingnamespacestd;constintN=1e6+10;template......
  • 深度学习基本概念简介
    一、LinearModels'Bias上篇学习机器学习一文中,所构造的$y=b+wx_0$函数是一个linearmodel亦即线性模型,但是linearmodels有缺陷的——它过于简单了。实际应用中,我们所面临的不会只是一个简单的linearmodel,因此我们需要更复杂的models。比如上图中的红色曲线,如何找到它......
  • React 学习笔记:刚开始接触
    目录前言相关链接个人对React和Vue的初步感觉React和Vue官方态度的区别ReactVue新建第一个React项目复制官方的文档代码教程:井字棋游戏React个人使用体验返回html修改样式作用域React的常用组件ReactDeveloperToolsReact开发工具React框架推荐总结前言之前有断断续续学过一段......
  • 一周-每天1 小时,学习实现一个简单的mini-React
    关于从0到1实现一个mini-React过程起因---为什么会有这篇文章还得从前几天加入了一个十分"内卷"的群聊开始崔学社mini-React.偶然看到朋友圈一叫mini-React的游戏副本课程,对这觉得这个课程听起来好像挺有意思的,大概看了一下课程内容,觉得很有意思,就果断加入了.然后就......