用Java编写一个方法public initcap(String word);把这整句话的每个单词的首字母改成大写,其他不变
时间: 2024-03-17 16:47:08 浏览: 79
好的,下面是Java代码实现:
```java
public class StringUtil {
public static String initcap(String word) {
if (word == null || word.isEmpty()) {
return word;
}
char[] chars = word.toCharArray();
boolean shouldCapitalize = true;
for (int i = 0; i < chars.length; i++) {
if (Character.isWhitespace(chars[i])) {
shouldCapitalize = true;
} else if (shouldCapitalize) {
chars[i] = Character.toUpperCase(chars[i]);
shouldCapitalize = false;
}
}
return new String(chars);
}
}
```
这个方法接受一个字符串参数,返回每个单词首字母大写的字符串。它首先检查输入字符串是否为空或为 null,如果是,则直接返回原字符串。然后将字符串转换为字符数组,遍历每个字符,如果是空白字符,设置 shouldCapitalize 标志为 true,表示下一个非空白字符需要被大写。如果不是空白字符,检查 shouldCapitalize 标志,如果为 true,则将该字符大写,并将 shouldCapitalize 标志设置为 false,表示下一个字符不需要大写。最后将字符数组转换为字符串并返回。
阅读全文