C # setara dengan charAt ()?

118

Saya tahu kita dapat menggunakan charAt()metode di Jawa untuk mendapatkan karakter individu dalam string dengan menentukan posisinya. Apakah ada metode yang setara di C #?

lusuh
sumber
Apakah Anda mencari solusi yang hanya berfungsi pada string yang dijamin tidak berisi karakter Unicode non-16-bit? Atau apakah Anda mencari solusi yang berfungsi pada string arbitrer?
hippietrail

Jawaban:

201

Anda dapat mengindeks menjadi string dalam C # seperti array, dan Anda mendapatkan karakter pada indeks itu.

Contoh:

Di Jawa, Anda akan berkata

str.charAt(8);

Di C #, Anda akan berkata

str[8];
Zach
sumber
2
Saya pikir harus ditunjukkan bahwa str.Substring (8,1) berfungsi sebagai solusi, tetapi jauh lebih lambat. Baru saja menemukan itu dengan cara yang sulit.
qzcx
Ini menyelamatkan Hidupku: D Terima kasih banyak!
Web Spidi
0

Anda dapat menggunakan LINQ

string abc = "abc";
char getresult = abc.Where((item, index) => index == 2).Single();
Harshad Karemore
sumber
-1

tolong coba jadikan sebagai karakter

string str = "Tigger";
//then str[0] will return 'T' not "T"
swapnil rawat
sumber
-2

Console.WriteLine memungkinkan pengguna menentukan posisi dalam string.

Lihat contoh:

string str = "Tigger"; Console.WriteLine (str [0]); // mengembalikan "T"; Console.WriteLine (str [2]); // mengembalikan "g";

Ini dia!

AndrewJames 57
sumber
-3

Cukup gunakan String.ElementAt(). Ini sangat mirip dengan java String.charAt(). Selamat bersenang-senang coding!

Nguyễn Trần Hiển
sumber
Mengapa Anda menggunakan metode ekstensi IEnumerable, padahal Anda dapat melakukan apa yang disebutkan orang lain beberapa tahun yang lalu? (Pengindeksan string bawaan).
Dave Doknjas