我不知道用户在我的程序中输入的短语,我需要将整个第一个单词大写。
这是我尝试使用的代码。
System.out.println(p1.toUpperCase(0, p1.charAt(" ")));
我收到的错误是“String 类型的方法 charAt(int) 不适用于 agruments (String)。” 我不确定大写的其他方法,因此将不胜感激。
我不知道用户在我的程序中输入的短语,我需要将整个第一个单词大写。
这是我尝试使用的代码。
System.out.println(p1.toUpperCase(0, p1.charAt(" ")));
我收到的错误是“String 类型的方法 charAt(int) 不适用于 agruments (String)。” 我不确定大写的其他方法,因此将不胜感激。
假设你的单词是用空格隔开的,你可以用下面的方法把你的第一个单词变成大写:
String str = "This is a space separated string";
String newString = str.substring(0, str.indexOf(" ")).toUpperCase() +
str.substring(str.indexOf(" "));
请注意,String#charAt
方法接受一个索引,并返回该索引处的字符。您需要使用String#indexOf
which 给出传递的序列或字符的第一个索引。
在上面的代码中:
str.substring(0, str.indexOf(" "))
返回字符串中的第一个单词,并在返回的字符串上调用toUpperCase()
将字符串转换为大写。然后与剩余的字符串连接。
您可以使用from类中的capitalize
orcapitalizeFully
方法。WordUtils
org.apache.commons.lang3.text
有关更多详细信息,请查看此处。