如何将短语的第一个单词转换为全部大写?

时间:2013-06-30 17:27:04

标签: java

我不知道用户输入我的程序的短语,我需要将整个第一个单词大写。

这是我尝试使用的代码。

System.out.println(p1.toUpperCase(0, p1.charAt(" ")));

我收到的错误是,“String类型中的方法charAt(int)不适用于agruments(String)。”我不确定大写如何,所以任何帮助将不胜感激。

2 个答案:

答案 0 :(得分:2)

假设您的单词以空格分隔,您可以使用以下方法将第一个单词设为大写:

String str = "This is a space separated string";

String newString = str.substring(0, str.indexOf(" ")).toUpperCase() + 
                   str.substring(str.indexOf(" "));

请注意,String#charAt方法接受索引,并返回该索引处的字符。您需要使用String#indexOf,它提供传递的序列或字符的第一个索引。

在上面的代码中:

str.substring(0, str.indexOf(" "))返回字符串中的第一个单词,并在返回的字符串上调用toUpperCase()将字符串转换为大写。 然后你连接剩下的字符串。

答案 1 :(得分:1)

您可以使用capitalizecapitalizeFully课程中的WordUtilsorg.apache.commons.lang3.text方法。

有关详细信息,请查看here