700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 将一个字符串首字母转大写(英文)

将一个字符串首字母转大写(英文)

时间:2021-01-06 00:57:59

相关推荐

将一个字符串首字母转大写(英文)

工作遇到了一个需求,从properties文件中获取配置的字段,然后将获取的字段的首字母转为大写。

可以使用两种方式来实现一下:

1、利用 String 和 Character 自身提供的方法来实现:

/*** 首字母转大写* @param s* @return*/public static String toUpperFirstOne(String s) {if (Character.isUpperCase(s.charAt(0))) {return s;} else {return (new StringBuilder()).append(Character.toUpperCase(s.charAt(0))).append(s.substring(1)).toString();}}

2、利用 ASCII 码的特性来实现:

/*** 将字符串的首字母转大写* @param s* @return*/private static String toUpperFirstCharacter(String s) {// 利用ascii编码的前移,效率要高于截取字符串进行转换的操作char[] cs = s.toCharArray();if (Character.isLowerCase(cs[0])) {cs[0] -= 32;return String.valueOf(cs);}return s;}

上面的两种方式都可以实现一个字符串的首字母转大写操作,经过多次测试,第二中方法在绝大多数情况下效率上稍微优于第一种,二者的时间差别大概是为微秒和纳秒级别。

PS:根据上面的代码,同样也可以写出两种对应的将一个字符串首字母转为小写的方法

1、利用 String 和 Character 自身提供的方法来实现:

/*** 首字母转小写* @param s* @return*/public static String toLowerFirstOne(String s) {if (Character.isLowerCase(s.charAt(0))) {return s;} else {return (new StringBuilder()).append(Character.toLowerCase(s.charAt(0))).append(s.substring(1)).toString();}}

2、利用 ASCII 码的特性来实现

/*** 将字符串的首字母转小写* @param s* @return*/private static String toLowerFirstCharacter(String s) {char[] cs = s.toCharArray();if (Character.isUpperCase(cs[0])) {cs[0] += 32;return String.valueOf(cs);}return s;}

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。