Java中String首字母大寫方法
阿新 • • 發佈:2019-01-04
傳統思路是:先將String 的首字母單獨接取下來轉成大寫,然後再拼接上剩餘字串。
public String upperCase(String str) {
return str.substring(0, 1).toUpperCase() + str.substring(1);
}
這裡順便提一下substring 的用法:
1、擷取掉str 從首字母起長度為beginIndex 的字串,將剩餘字串賦值給str。
str.substring(int beginIndex);
2、擷取str 中從beginIndex 開始至endIndex 結束時的字串,並將其賦值給str。
索引從0開始,返回的字串包括 beginIndex 處字元,但不包括endIndex 處的字元,endIndex 可以理解為長度。
str.substring(int beginIndex, int endIndex);
接下來安利一種以前看到的效率更高的寫法:
public String upperCase(String str) { char[] ch = str.toCharArray(); if (ch[0] >= 'a' && ch[0] <= 'z') { ch[0] = (char) (ch[0] - 32); } return new String(ch); }
這裡先將字串轉為字元陣列,然後將陣列的第一個元素,即字串首字母,進行ASCII 碼前移,ASCII 中大寫字母從65開始,小寫字母從97開始,所以這裡減去32。