Changing upper case string to lower case, but keep only first character to Upper case
本问题已经有最佳答案,请猛点这里访问。
我有多个大写字符串:
詹姆斯·史密斯,纳文·赫曼特·西格,拉拉·乌蒂泽
如何将这些字符串转换为:
詹姆斯·史密斯、Navin Hemant Signh、Lala Utrizer在爪哇?
请帮忙。
尝试如下操作:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 | String values ="JAMES SMITH, NAVIN HEMANT SIGNH, LALA UTRIZER"; if (values != null && !values.isEmpty()) { final StringBuilder fixedCaseBuilder = new StringBuilder(values.length()+1); for (final String word : values.split("")) { if (!word.isEmpty()) { fixedCaseBuilder.append(Character.toUpperCase(word.charAt(0))); fixedCaseBuilder.append(word.substring(1, word.length()).toLowerCase()); } fixedCaseBuilder.append(' '); } fixedCaseBuilder.setLength(fixedCaseBuilder.length()-1); final String result = fixedCaseBuilder.toString(); } |
如果您可以选择要使用的库,我建议您使用ApacheCommonsUtils中的wordUtils。它有一个大写的方法(字符串S),它接受一个字符串并将每个单词的第一个字母大写。