如何使String首字母大写和其他小

时间:2020-04-14 08:05:50

标签: java string

我正在尝试将String的首字母转换为大写,其余的应该很小。我尝试下面的代码。转换首字母大写效果很好,但将剩余字母转换为小写字母。

String str = "hiGh";
// capitalize first letter
String output = str.substring(0, 1).toUpperCase() + str.substring(1)

输出应为:High

3 个答案:

答案 0 :(得分:1)

您可以操纵String的字符以确保只有第一个是大写,

String capitalizeFirstOf(String s){
 char[] chars = s.toCharArray();
  for (int i=0; i<s.length(); i++){
   if (i==0){
    chars[i] = Character.toUpperCase(chars[i]);
   }else{
    chars[i] = Character.toLowerCase(chars[i]);
   }
  }

  return new String(chars);
}

答案 1 :(得分:1)

您需要将后面的子字符串更改为小写。 使用以下代码:

String name  = "hiGH"; 
name = name.substring(0,1).toUpperCase() + name.substring(1).toLowerCase();

答案 2 :(得分:-1)

如果您做了很多字符串转换,我将建议使用类似以下的库: apache commons 3

他们有UpperCase/LowerCase/SwapCase/Capitalize/Uncapitalize

因此您不必花时间在简单的字符串方法上。

相关问题