C # เทียบเท่ากับ charAt () ของ Java?


118

ฉันรู้ว่าเราสามารถใช้charAt()วิธีการใน Java รับอักขระแต่ละตัวในสตริงโดยระบุตำแหน่ง มีวิธีการเทียบเท่าใน C # หรือไม่?


คุณกำลังมองหาโซลูชันที่ใช้ได้เฉพาะกับสตริงที่รับประกันว่าจะไม่มีอักขระ Unicode ที่ไม่ใช่ 16 บิตหรือไม่? หรือคุณกำลังมองหาวิธีแก้ปัญหาที่ใช้งานได้กับสตริงโดยพลการ?
hippietrail

คำตอบ:


201

คุณสามารถสร้างดัชนีเป็นสตริงใน C # เช่นอาร์เรย์และคุณจะได้รับอักขระที่ดัชนีนั้น

ตัวอย่าง:

ใน Java คุณจะพูดว่า

str.charAt(8);

ใน C # คุณจะพูดว่า

str[8];

2
ฉันคิดว่ามันควรจะชี้ให้เห็นว่า str.Substring (8,1) ทำงานเป็นวิธีแก้ปัญหา แต่ช้ากว่ามาก เพิ่งพบว่าวิธีที่ยาก
qzcx

สิ่งนี้ช่วยชีวิตฉัน: D ขอบคุณมาก!
Spidi's Web




-2

Console.WriteLine อนุญาตให้ผู้ใช้ระบุตำแหน่งในสตริง

ดูตัวอย่าง:

สตริง str = "ทิกเกอร์"; Console.WriteLine (str [0]); // ส่งกลับ "T"; Console.WriteLine (str [2]); // ส่งกลับ "g";

ไปเลย!


-3

String.ElementAt()เพียงแค่ใช้ String.charAt()มันค่อนข้างจะคล้ายกับของจาวา ขอให้สนุกกับการเขียนโค้ด!


ทำไมคุณถึงใช้วิธีการขยาย IEnumerable ในเมื่อคุณสามารถทำสิ่งที่คนอื่นกล่าวถึงเมื่อหลายปีก่อนได้ (การสร้างดัชนีสตริงในตัว)
Dave Doknjas
โดยการใช้ไซต์ของเรา หมายความว่าคุณได้อ่านและทำความเข้าใจนโยบายคุกกี้และนโยบายความเป็นส่วนตัวของเราแล้ว
Licensed under cc by-sa 3.0 with attribution required.