C # Java'nın charAt () değerine eşdeğer mi?


118

charAt()Java'daki yöntemi, konumunu belirterek bir dizede tek bir karakter elde edebileceğimizi biliyorum . C # 'da eşdeğer bir yöntem var mı?


Yalnızca 16 bit olmayan Unicode karakter içermeyeceği garantili dizelerde çalışan bir çözüm mü arıyorsunuz? Yoksa keyfi bir dizide çalışan bir çözüm mü arıyorsunuz?
hippietrail

Yanıtlar:


201

C # 'da bir dizi gibi bir dizgeye dizin oluşturabilir ve karakteri o dizinde alırsınız.

Misal:

Java'da şöyle derdin

str.charAt(8);

C # dilinde

str[8];

2
Str.Substring (8,1) 'in bir çözüm olarak çalıştığını belirtmek gerekir, ancak çok daha yavaştır. Bunu zor yoldan öğrendim.
qzcx

Bu Hayatımı kurtardı: D Çok teşekkürler!
Spidi'nin Ağı


0

LINQ kullanabilirsiniz

string abc = "abc";
char getresult = abc.Where((item, index) => index == 2).Single();

-1

lütfen onu bir karakter olarak yapmaya çalış

string str = "Tigger";
//then str[0] will return 'T' not "T"

-2

Console.WriteLine, kullanıcının bir dizede bir konum belirtmesine izin verir.

Örneğe bakın:

string str = "Tigger"; Console.WriteLine (str [0]); // "T" döndürür; Console.WriteLine (str [2]); // "g" döndürür;

İşte gidiyorsun!


-3

Basitçe kullanın String.ElementAt(). Java'nınkine oldukça benzer String.charAt(). İyi kodlama yapın!


Yıllar önce diğerlerinin bahsettiğini yapabiliyorken, neden IEnumerable genişletme yöntemini kullanasınız? (Yerleşik dize indeksleme).
Dave Doknjas
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.