如何使用LINQ通过索引筛选具有整数数组的字符串数组


String[] columnList = new String[]{"column1","column2","column3","column4","column5","column6","column7","column8","column9","column10","column11","column12" };
Int[] fList = new Int[] { 1,3,5,10,12 };

我想要这样的输出:

column1,column3,column5,column10,column12

您可以将String.JoinSelect组合使用

string result = string.Join(",", fList.Select(n => columnList[n-1]));

显然,您需要确保索引存在。如果你不知道你可以用ElementAtOrDefault(n-1)代替[n-1]

我希望这不是家庭作业!这将发挥作用:

var joined = from column in columnList.Select((x, i) => new {Index = i + 1, Column = x} )
join index in fList on column.Index equals index
select column.Column;
Console.WriteLine(string.Join(",", joined));
// output
// column1,column3,column5,column10,column12

最新更新