c#

c#集合如何进行映射操作

小樊
85
2024-11-20 12:34:37
栏目: 编程语言

在C#中,可以使用LINQ(Language Integrated Query)对集合进行映射操作。LINQ是一种强大的查询语言,它允许你以声明式的方式查询和操作数据。以下是一些常见的映射操作:

  1. 选择(Select):将集合中的每个元素转换为另一种类型或创建一个新的集合。
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

        // 使用Select操作将每个整数转换为它的平方
        List<int> squares = numbers.Select(x => x * x).ToList();

        Console.WriteLine("Squares: " + string.Join(", ", squares));
    }
}
  1. 过滤(Where):根据指定的条件筛选集合中的元素。
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

        // 使用Where操作筛选出偶数
        List<int> evenNumbers = numbers.Where(x => x % 2 == 0).ToList();

        Console.WriteLine("Even numbers: " + string.Join(", ", evenNumbers));
    }
}
  1. 归约(Reduce):将集合中的元素组合成一个单一的结果。
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

        // 使用Reduce操作计算所有整数的乘积
        int product = numbers.reduce((x, y) => x * y);

        Console.WriteLine("Product: " + product);
    }
}
  1. 排序(OrderBy):根据指定的属性或条件对集合中的元素进行排序。
using System;
using System.Collections.Generic;
using System.Linq;

class Program
{
    static void Main()
    {
        List<int> numbers = new List<int> { 5, 3, 1, 4, 2 };

        // 使用OrderBy操作按升序对整数进行排序
        List<int> sortedNumbers = numbers.OrderBy(x => x).ToList();

        Console.WriteLine("Sorted numbers: " + string.Join(", ", sortedNumbers));
    }
}

这些只是LINQ提供的一些基本映射操作。LINQ还支持许多其他操作,如分组(GroupBy)、连接(Join)和分区(Partition)等。要使用LINQ,你需要引入System.Linq命名空间。

0
看了该问题的人还看了