Java 首字母轉大寫
阿新 • • 發佈:2020-11-18
1.程式碼實現
/* * 首字母轉大寫 * @attention: * @date: 2020年11月17日 0017 14:51 * @param: word 待轉換字串 * @return: java.lang.String 首字母轉成了大寫 */ public static String convertInitialUpper(String word) { if (StringUtils.isEmpty(word)) return ""; // 方式一 // return word.substring(0,1).toUpperCase() + word.substring(1); // 方式二:效率高 char[] chars = word.toCharArray(); // 首字母轉大寫(ASCII編碼前移) chars[0] -= 32; return new String(chars); }
2.具體分析
如上圖所示,有兩種實現方式:
第一種是:字串擷取;
第二種是:ASCII前移,具體是什麼意思?一起來看下
如上圖所示,小寫字母-32後,會變成大寫字母;
反之,大寫字母+32,會變成小寫,也是成立的。
據說,這種方式效率高,但我沒有測試,需要轉大寫的一般都是一兩個單詞,兩種實現方式速度幾乎是不會有差別的,就當是鞏固基礎知識啦。
3.使用場景
首字母轉大寫,何時能夠用得上?
我們知道,在Java規範中,類的成員變數名首字母不能大寫,必須是標準的駝峰命名法,但在實際開發過程中,往往會有首字母大寫的需求
如果使用阿里巴巴的fastjson,將其轉換成json物件,我們會發現首字母被強制轉換成了小寫,這是阿里搞得鬼,在這裡,我們上面程式碼就能用上啦。
寫在最後
哪位大佬如若發現文章存在紕漏之處或需要補充更多內容,歡迎留言!!!