字符串示例

one thousand only
two hundred
twenty
seven

我如何改变一个大写字母的字符串的第一个字符,而不改变任何其他字母的情况?

更改之后应该是:

One thousand only
Two hundred
Twenty
Seven

注意:我不想使用apache.commons.lang.WordUtils来做这件事。


当前回答

给定输入字符串:

Character.toUpperCase(input.charAt(0)) + input.substring(1).toLowerCase()

其他回答

最简单的方法是使用org.apache.commons.lang.StringUtils类

StringUtils.capitalize(Str);

2019年7月更新

目前,用于实现此功能的最新库函数包含在 org.apache.commons.lang3.StringUtils

import org.apache.commons.lang3.StringUtils;

StringUtils.capitalize(myString);

如果你正在使用Maven,在pom.xml中导入依赖项:

<dependency>
  <groupId>org.apache.commons</groupId>
  <artifactId>commons-lang3</artifactId>
  <version>3.9</version>
</dependency>

用StringBuilder解决方案:

value = new StringBuilder()
                .append(value.substring(0, 1).toUpperCase())
                .append(value.substring(1))
                .toString();

. .基于之前的答案

给定输入字符串:

Character.toUpperCase(input.charAt(0)) + input.substring(1).toLowerCase()
public String capitalizeFirstLetter(String original) {
    if (original == null || original.length() == 0) {
        return original;
    }
    return original.substring(0, 1).toUpperCase() + original.substring(1);
}

只是…一个完整的解决方案,我看到它只是结合了其他人最终发布的内容=P。