Ich weiß, dass wir das gebrauchen können charAt()
-Methode in Java erhält ein einzelnes Zeichen in einer Zeichenfolge, indem es seine Position angibt. Gibt es eine äquivalente Methode in C#?
C#-Äquivalent zu Javas charAt()?
rattig
Zach
Sie können einen String in C# wie ein Array indizieren und erhalten das Zeichen an diesem Index.
Beispiel:
In Java würde man sagen
str.charAt(8);
In C# würde man sagen
str[8];
-
Ich denke, es sollte darauf hingewiesen werden, dass str.Substring(8,1) als Lösung funktioniert, aber viel langsamer ist. Habe das gerade auf die harte Tour herausgefunden.
– qzcx
28. Februar 2015 um 2:10 Uhr
-
Das hat mein Leben gerettet 😀 Vielen Dank!
– Spidis Web
1. März 2016 um 13:40 Uhr
shahkalpesh
string sample = "ratty";
Console.WriteLine(sample[0]);
Und
Console.WriteLine(sample.Chars(0));
Referenz: http://msdn.microsoft.com/en-us/library/system.string.chars%28v=VS.71%29.aspx
Das Obige ist dasselbe wie die Verwendung von Indexern in c#.
-
Das hat mein Leben gerettet 😀 Vielen Dank!
– Spidis Web
1. März 2016 um 13:39 Uhr
Sie können LINQ verwenden
string abc = "abc";
char getresult = abc.Where((item, index) => index == 2).Single();
Swapnil Rawat
Bitte versuchen Sie es als Charakter zu machen
string str = "Tigger";
//then str[0] will return 'T' not "T"
AndrewJames57
Console.WriteLine
ermöglicht dem Benutzer, eine Position in einer Zeichenfolge anzugeben.
Siehe unten Beispielcode:
string str = "Tigger";
Console.WriteLine( str[0] ); //returns "T";
Console.WriteLine( str[2] ); //returns "g";
Los geht’s!
Nguyễn Trần Hiển
Einfach verwenden String.ElementAt()
. Es ist dem von Java ziemlich ähnlich String.charAt()
. Viel Spaß beim Codieren!
Suchen Sie nach einer Lösung, die nur mit Zeichenfolgen funktioniert, die garantiert keine Nicht-16-Bit-Unicode-Zeichen enthalten? Oder suchen Sie nach einer Lösung, die mit einer beliebigen Zeichenfolge funktioniert?
– Hippiepfad
25. April 2015 um 1:14 Uhr