Java String charAt()
charAt() 方法用來取得字串中指定位置的字元。
語法
string.charAt(int index)
index:字元的索引位置(從 0 開始)- 回傳指定位置的字元
範例
String s = "Hello";
char c1 = s.charAt(0); // 'H'
char c2 = s.charAt(1); // 'e'
char c3 = s.charAt(4); // 'o'
System.out.println(c1); // H
System.out.println(c2); // e
System.out.println(c3); // o
索引範圍
索引從 0 開始,到 length() - 1:
String s = "Hello"; // 索引 0, 1, 2, 3, 4
// 超出範圍會拋出 StringIndexOutOfBoundsException
// char c = s.charAt(5); // 錯誤!
// char c = s.charAt(-1); // 錯誤!
遍歷字串
String s = "Hello";
// 使用 charAt() 遍歷
for (int i = 0; i < s.length(); i++) {
System.out.println(s.charAt(i));
}
toCharArray()
將字串轉換為字元陣列:
String s = "Hello";
char[] chars = s.toCharArray();
for (char c : chars) {
System.out.println(c);
}
// 也可以修改字元
chars[0] = 'J';
String newString = new String(chars);
System.out.println(newString); // "Jello"
實際應用
檢查首字元
String s = "Hello";
if (s.charAt(0) == 'H') {
System.out.println("字串以 H 開頭");
}
計算特定字元數量
String s = "Hello World";
int count = 0;
for (int i = 0; i < s.length(); i++) {
if (s.charAt(i) == 'l') {
count++;
}
}
System.out.println("l 出現 " + count + " 次"); // l 出現 3 次
反轉字串
String s = "Hello";
String reversed = "";
for (int i = s.length() - 1; i >= 0; i--) {
reversed += s.charAt(i);
}
System.out.println(reversed); // "olleH"