2017-06-11 4 views
0

Ich habe eine Menge Strings in meinem String-Array. Ich möchte es über LINQ umkehren. Obwohl ich es mit einer for-Schleife mit Array.Reverse tun kann, frage ich mich, ob ich es mit LINQ tun kann?Wie alle Zeichenfolgen in Zeichenfolgen mit LINQ umzukehren?

Dies ist mein Code, aber es funktioniert nicht wie erwartet:

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(); 

Mein erwartetes Ergebnis sein sollte:

"olleH", "dlroW", "ooF" 

Antwort

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

Danke dafür funktioniert das wie erwartet! –

0

Es klingt wie Sie versuchen, die einzelnen Strings im Array zu umkehren und nicht die Reihenfolge der Elemente umkehren, ist das richtig? Wenn ja, versuchen Sie es.

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

Ich habe keinen Zugriff auf meine C# Maschine, also kann ich das nicht testen.

Verwandte Themen