迹忆客 专注技术分享

当前位置:主页 > 学无止境 > 编程语言 >

C# 中的 LINQ 分组

作者:迹忆客 最近更新:2024/01/16 浏览次数:

本教程将讨论在 C# 中按值对对象列表进行分组的方法。


C# 中的 LINQ 分组

LINQ 将类似 SQL 的查询功能与 C# 中的数据结构集成在一起。

假设我们有以下类别的对象的列表。

class Car {
  public string Brand { get; set; }
  public int Model { get; set; }
}

Brand 是汽车的品牌名称,Model 是汽车的型号。多个对象的 Brand 属性可以相同,但是每个对象的 Model 编号必须不同。如果要按品牌名称对对象列表进行分组,可以在 LINQ 中使用 GroupBy 方法。以下代码示例向我们展示了如何使用 LINQ 中的 GroupBy 方法按某个值对特定类的对象进行分组。

using System;
using System.Collections.Generic;
using System.Linq;

namespace linq_goup_by {
  public class Car {
    public string Brand { get; set; }
    public int Model { get; set; }
    public Car(string b, int m) {
      Brand = b;
      Model = m;
    }
  }
  class Program {
    static void Main(string[] args) {
      List<Car> cars = new List<Car>();
      cars.Add(new Car("Brand 1", 11));
      cars.Add(new Car("Brand 1", 22));
      cars.Add(new Car("Brand 2", 12));
      cars.Add(new Car("Brand 2", 21));
      var results = from c in cars group c by c.Brand;
      foreach (var r in results) {
        Console.WriteLine(r.Key);
        foreach (Car c in r) {
          Console.WriteLine(c.Model);
        }
      }
    }
  }
}

输出:

Brand 1
11
22
Brand 2
12
21

在上面的代码中,我们首先声明并初始化了对象 cars 的列表,然后通过 Brand 属性对值进行分组并将其保存在 result 变量中。

上一篇:使用 C# 在 LINQ 查询中按多列分组

下一篇:没有了

转载请发邮件至 1244347461@qq.com 进行申请,经作者同意之后,转载请以链接形式注明出处

本文地址:

相关文章

使用 C# 在 LINQ 查询中按多列分组

发布时间:2024/01/20 浏览次数:167 分类:编程语言

这是一篇关于 LINQ 查询的使用以及我们如何使用 LINQ 查询按列分组的文章。本文简要介绍了使用 C# 进行的 LINQ 查询。此外,它还讨论了如何使用 LINQ 查询按多列对结果进行分组。

在 C# 中捕获多个异常

发布时间:2024/01/20 浏览次数:135 分类:编程语言

有两种主要方法可用于捕获 C# 中的多个异常,即 Exception 类和 catch 子句中的 if 语句。使用 C# 中的 Exception 类捕获多个异常 Exception 类用于表示 C# 中的一般异常。

C# 中为无效参数或参数引发的异常类型

发布时间:2024/01/20 浏览次数:71 分类:编程语言

本教程将教你如何在 C# 中为无效参数或参数抛出不同类型的异常。异常提供有关 C# 程序中的运行时错误或预期不会发生或违反系统/应用程序约束的条件的信息。在本教程中,你将学习与无效参

C# 中的异常列表

发布时间:2024/01/20 浏览次数:128 分类:编程语言

我们将查看本文中可能引发的 C# 异常。System Exception 类是 C# 编程语言中预定义的异常类,可用于编程。选择代码中可能出现的异常并将其插入到适当的 catch 块中。

C# 中的树形数据结构

发布时间:2024/01/20 浏览次数:73 分类:编程语言

C# 中的树是本文讨论的主题。一种以树的形式组织起来的层次数据称为树数据结构。C# 中的树将是本文讨论的主题。数据结构是我们需要知道的第一件事。

C# 中的 lock 语句

发布时间:2024/01/20 浏览次数:166 分类:编程语言

C# 中 lock 语句指定的代码部分不能被多个线程同时访问。C# 中的 lock 语句 lock(obj) 语句规定,在 C# 中,下面这段代码不能被多个线程同时访问。

等待线程在 C# 中完成

发布时间:2024/01/20 浏览次数:70 分类:编程语言

等待 C# 中的线程完成的主要方法有两种:Task.WaitAll()和 Thread.Join()函数。用 C# 中的 Task.WaitAll() 方法等待线程完成 C# 中的 [Task.WaitAll() 方法)用于等待 Task 类的所有对象的完成。

C# 中的线程与任务

发布时间:2024/01/20 浏览次数:127 分类:编程语言

Thread 类创建一个实际的 OS 线程,而 Task 类创建一个在线程池中异步执行的任务。Thread 类在 C# 中创建实际的操作系统级别的线程。用 Thread 类创建的线程会占用堆栈内存等资源,上下文的 CPU 开

在 C# 中停止线程

发布时间:2024/01/20 浏览次数:138 分类:编程语言

在本文中,我将解释如何在 C# 中启动和停止线程。有时,在 C# 中使用线程时,你可能会遇到需要终止线程的情况。C# 确实为你提供了成功执行此操作的方法,本文旨在解释在 C# 中终止线程的过

扫一扫阅读全部技术教程

社交账号
  • https://www.github.com/onmpw
  • qq:1244347461

最新推荐

教程更新

热门标签

扫码一下
查看教程更方便