在java中是否有相同的ucwords

时间:2011-02-28 15:27:42

标签: java php android

在php中,方法ucwords转换字符串中的任何字符串,其中每个单词的第一个字符都是大写,而所有其他字符都是小写。

我总是最终制作自己的实现,我想知道是否存在标准方法。

3 个答案:

答案 0 :(得分:8)

这称为大写。使用Apache Commons的StringUtils来that

在此处查看更多信息:

http://commons.apache.org/proper/commons-lang/apidocs/org/apache/commons/lang3/StringUtils.html

WordUtils也值得一看。见here

答案 1 :(得分:5)

否则这是一个相当简单的修复,例如; String string1 = someString.substring(0,1).toUpperCase() + someString.substring(1);

您可以将它放在一个函数中,并在需要时调用它。为您节省维护不需要的库的麻烦。 (并不是说apache公地总是有问题,但你明白了。)

编辑:someString.substring(1)部分可以写成someString.substring(1).toLowerCase(),只是为了确保字符串的其余部分是小写的

答案 2 :(得分:2)

我不知道任何直接的等价物,但你总是可以写一个:

public static String capitalize(String input) {
   if (input == null || input.length() <= 0) {
     return input;
   }
   char[] chars = new char[1];
   input.getChars(0, 1, chars, 0);
   if (Character.isUpperCase(chars[0])) {
     return input;
   } else {
     StringBuilder buffer = new StringBuilder(input.length());
     buffer.append(Character.toUpperCase(chars[0]));
     buffer.append(input.toCharArray(), 1, input.length()-1);
     return buffer.toString();
   }
}