Java String 首字母大小写问题
通常情况下,遇到String首字母大小写转换的问题,都是采用首字母截取转换后拼上后续字段的方法,在网上看到了另外一种,值得记录下来。
//通常的写法,通过截取首字母转换拼接字符串的方法
public static String firstToUpper1(String s){
s = s.substring(0,1).toUpperCase()+s.substring(1);
return s;
}
//另一种写法,将字符串转换为char数组,将数组第一个元素的ascii码减32,得到的就是大写
public static String firstToUpper2(String s){
char[] arr = s.toCharArray();
arr[0]-=32;
return String.valueOf(arr);
}
//ascii码前移的做法比拼接字符串效率高的多,但是需要考虑的是如果首字母大小写未知情况下转换,ASCII码的方法会生成其他字符
public static void main(String[] args) {
String s = firstToUpper2("Fewjif");
System.out.println(s); //&ewjif
}