c# - 如何在C#中使用Ienumerable获取替代元素

标签 c# linq lambda enumerable

这是我的问题的继续:How to get reverse of a series of elements using Enumarable in C#?

现在,我仅需要备用元素。这是我使用for循环的解决方案:

int Max = 10;
int limit = 5;
Dictionary<String , String> MyDict = new Dictionary<string,string>();
int j = 0;
for (int i = 0; i <Max; i++)
{
    if (i >= limit)
        MyDict.Add((i+1).ToString(), "None");
    else
        MyDict.Add((i+1).ToString(), j.ToString());
    j+=2;
}


输出就像

{ "1" "0"}
{ "2" "2"}
{ "3" "4"}
{ "4" "6"}
{ "5" "8"}
{ "6" "None"}
{ "7" "None"}
{ "8" "None"}
{ "9" "None"}
{ "10" "None"}


如何使用Enumarerable或任何LINQ方法执行此操作。以及与我之前的问题相反的内容:How to get reverse of a series of elements using Enumarable in C#?

最佳答案

您可以使用标准的LINQ Where扩展方法作为执行所需操作的基础。

给定IEnumerable<T>的列表,它将像这样工作:

var evens = list.Where((t, i) => i % 2 == 0);
var odds = list.Where((t, i) => i % 2 == 1);


希望您可以在这些基础上做您想做的事。

关于c# - 如何在C#中使用Ienumerable获取替代元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4123685/

相关文章:

c# - 在相似类之间进行比较/复制的简洁方法

c++ - 通用 lambda 在 C++14 中如何工作?

.net - 是否可以在Elasticsearch路径中使用lambda表达式?

c# - "Cannot access disposed object."异常问题解决

c# - WCF SSL 负载均衡器。负载均衡器更改 ssl 端口

c# - Web Api 2 不反序列化 JSON

java - 查找多个列表的最大值

c# - 哪个 dll 包含泛型扩展方法?

c# - Mongodb 驱动程序 Linq 查询抛出异常

c# - 将包含 IN 语句的 SQL 转换为可链接的 LINQ