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.