练习2-stringbuffer 将字符串中的每个单词首字母转换为大写。
时间: 2024-09-26 13:15:23 浏览: 28
推选字符串是字符的序列-它是组织字符的基本的数据结构Java将字符串PPT资料.ppt
练习2中,关于StringBuffer的一个常见任务是将字符串中的每个单词的首字母转换为大写。这通常通过以下几个步骤完成:
1. 创建一个StringBuffer对象,初始值为输入的字符串。
2. 使用`split()`方法将字符串按空格拆分成单词数组,因为默认情况下它会分割所有空白字符。
3. 遍历这个单词数组,对于每个单词,使用`substring(0, 1)`获取首字母,然后用`toUpperCase()`将其转换为大写。
4. 使用`StringBuilder`的`insert(int index, CharSequence sequence)`方法,在原来的位置插入首字母的大写形式。
5. 然后将剩余部分追加回StringBuffer。
6. 最后,使用`toString()`方法将处理后的StringBuffer转换回字符串。
下面是一个简单的Java示例代码实现:
```java
public String capitalizeWords(String input) {
StringBuffer stringBuffer = new StringBuffer(input);
String[] words = stringBuffer.toString().split("\\s+");
for (int i = 0; i < words.length; i++) {
if (!words[i].isEmpty()) { // 有些情况下可能会有空格,如"word ",所以检查一下
stringBuffer.insert(i, Character.toUpperCase(words[i].charAt(0)));
stringBuffer.deleteCharAt(i + 1); // 删除原来的首字母,防止重复插入
}
}
return stringBuffer.toString();
}
```
阅读全文