溫馨提示×

如何用C# LINQ和Lambda進(jìn)行數(shù)據(jù)篩選

c#
小樊
81
2024-09-14 23:59:04
欄目: 編程語言

在C#中,LINQ(Language Integrated Query)和Lambda表達(dá)式可以幫助你輕松地對數(shù)據(jù)進(jìn)行篩選

首先,確保你已經(jīng)引入了System.Linq命名空間:

using System.Linq;

接下來,我們將創(chuàng)建一個示例列表并使用LINQ和Lambda表達(dá)式進(jìn)行篩選。

  1. 創(chuàng)建一個簡單的類,例如Person
public class Person
{
    public string Name { get; set; }
    public int Age { get; set; }
}
  1. 創(chuàng)建一個包含Person對象的列表:
List<Person> people = new List<Person>
{
    new Person { Name = "Alice", Age = 30 },
    new Person { Name = "Bob", Age = 25 },
    new Person { Name = "Charlie", Age = 35 },
    new Person { Name = "David", Age = 28 }
};
  1. 使用LINQ和Lambda表達(dá)式對列表進(jìn)行篩選。例如,我們可以篩選出年齡大于等于30歲的人:
var filteredPeople = people.Where(person => person.Age >= 30);

在這個例子中,Where方法是一個LINQ擴(kuò)展方法,它接受一個謂詞(Predicate)作為參數(shù)。謂詞是一個返回布爾值的函數(shù),用于測試集合中的每個元素是否滿足條件。在這里,我們使用Lambda表達(dá)式person => person.Age >= 30作為謂詞,它表示“選擇年齡大于等于30歲的人”。

  1. 遍歷篩選后的結(jié)果并輸出:
foreach (var person in filteredPeople)
{
    Console.WriteLine($"Name: {person.Name}, Age: {person.Age}");
}

這將輸出:

Name: Alice, Age: 30
Name: Charlie, Age: 35

這就是如何使用C#的LINQ和Lambda表達(dá)式進(jìn)行數(shù)據(jù)篩選的基本方法。你可以根據(jù)需要修改篩選條件和數(shù)據(jù)類型。

0