在C#中,向循环中的表达式添加可变数量的条件可以通过使用LINQ和lambda表达式来实现
using System;
using System.Collections.Generic;
import System.Linq;
class Program
{
static void Main()
{
List<int> numbers = new List<int> { 1, 2, 3, 4, 5 };
// 定义一组条件
List<Func<int, bool>> conditions = new List<Func<int, bool>> {
x => x % 2 == 0,
x => x % 3 == 0,
// 添加更多条件
};
// 使用LINQ和lambda表达式来应用可变数量的条件
var filteredNumbers = numbers.Where(x => conditions.All(c => c(x)));
// 输出满足所有条件的数字
foreach (var number in filteredNumbers)
{
Console.WriteLine(number);
}
}
}
在这个示例中,我们首先定义了一个包含整数的列表numbers
,然后定义了一个包含多个条件的列表conditions
。每个条件都是一个接受整数并返回布尔值的函数。
在filteredNumbers
的计算中,我们使用了LINQ的Where
方法,并结合了All
方法来确保只有当一个数字满足所有条件时才被选中。这样,我们就可以向循环中的表达式添加可变数量的条件。
领取专属 10元无门槛券
手把手带您无忧上云