gpt4 book ai didi

c# - 如何为每个 lambda 表达式编写一个迭代 C# 中的数字范围?

转载 作者:行者123 更新时间:2023-11-30 19:45:26 24 4
gpt4 key购买 nike

我想写这样的东西:

(0 .. 7).ForEach(i => SomeMethod(i))

但要么我找不到正确的语法,要么这在 C# 中是不可能的。如果可以,请问正确的语法是什么?

最佳答案

要实现您的目标,您需要添加虚幻且众所周知的 LINQ ForEach 语句。

public static void ForEach<T>(this IEnumerable<T> source, Action<T> action)
{
foreach(T item in source)
{
action(item);
}
}

用法:

Enumerable.Range(0, 7).ForEach(i => SomeMethod(i));

Enumerable.Range(0, 7).ForEach(i => Console.WriteLine(i.ToString());

Enumerable.Range(0, 7).ForEach(i =>
{
string oddEven = i % 2 == 0 ? "even" : "odd";
Console.WriteLine(string.Format("{0} is {1}", i, oddEven));
}

额外阅读

"foreach" vs "ForEach"

关于c# - 如何为每个 lambda 表达式编写一个迭代 C# 中的数字范围?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10580238/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com