c#中filter的工作原理是什么

c#
小億
114
2024-03-26 17:15:44

在C#中,filter通常指的是LINQ中的Where方法,用于篩選集合中符合條件的元素。其工作原理是通過(guò)傳入一個(gè)謂詞(Predicate)來(lái)判斷集合中的每一個(gè)元素是否符合條件,如果符合條件則該元素被包含在結(jié)果集合中,否則被排除。

具體而言,Where方法接收一個(gè)Lambda表達(dá)式作為參數(shù),Lambda表達(dá)式包含一個(gè)參數(shù)代表集合中的每一個(gè)元素,返回一個(gè)布爾值表示該元素是否符合條件。Where方法會(huì)遍歷集合中的每一個(gè)元素,對(duì)每一個(gè)元素應(yīng)用Lambda表達(dá)式進(jìn)行判斷,將符合條件的元素加入到結(jié)果集合中返回。

示例代碼如下所示:

List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };

var filteredNumbers = numbers.Where(x => x % 2 == 0);

foreach (var number in filteredNumbers)
{
    Console.WriteLine(number); // 輸出2, 4
}

在上述代碼中,Where方法篩選出了集合中所有的偶數(shù)元素,最終結(jié)果為2和4。

0