如何使用LINQ反转字符串数组中的所有字符串?

时间:2017-06-11 03:21:28

标签: c# arrays linq

我的字符串数组中有很多字符串。我想通过LINQ反转它。虽然我可以使用Array.Reverse使用for循环,但我想知道我是否可以使用LINQ做到这一点?

这是我的代码,但它没有按预期工作:

string[] strTemp = new string[] {"Hello", "World", "Foo"};
string[] strResult = strTemp.Select((a, b) => new { Value = a, Index = b })
                   .Select(y => y.Value.ToCharArray().Reverse().ToString()).ToArray();

我的预期结果应该是:

"olleH", "dlroW", "ooF"

2 个答案:

答案 0 :(得分:2)

string[] strResult = strTemp.Select(y => string.Concat(y.Reverse())).ToArray();

答案 1 :(得分:0)

听起来你正试图反转数组中的各个字符串,而不是颠倒元素的顺序,这是正确的吗? 如果是这样,试试这个。

string[] strResult = strTemp.Select(s => Array.Reverse(s.ToCharArray()).ToString()).ToArray();

我无法访问我的c#机器,所以我无法对此进行测试。