问题描述:用户输入一个包含姓名、年龄和地址的字符串,格式为“姓名,年龄,地址”(例如“张三,20,北京”)。使用StringBuffer将其格式化为“姓名:张三,年龄:20,地址:北京”的形式输出。不能用stringtokenizer
时间: 2024-12-20 17:23:32 浏览: 7
要将给定的字符串按照特定格式进行处理,我们可以使用Java的`String`类的方法以及`StringBuilder`或`StringBuffer`,它们提供了方便的字符串操作功能。这里我们不使用`StringTokenizer`,因为它已经过时了,推荐使用更现代的API。
以下是一个示例,展示了如何使用`String`和`StringBuilder`来达到这个目的:
```java
public class Main {
public static void main(String[] args) {
String input = "张三,20,北京"; // 用户输入的字符串
StringBuilder outputBuilder = new StringBuilder();
// 分割输入字符串
String[] parts = input.split(",", -1); // 使用逗号分割,split()返回一个数组
// 将每个部分添加到输出Builder中,格式化成"属性名:值"的形式
for (int i = 0; i < parts.length; i++) {
if (i != 0) { // 不处理第一个逗号
outputBuilder.append(", ");
}
int index = parts[i].indexOf(" "); // 找到第一个空格的位置
String name = parts[i].substring(0, index); // 姓名
String value = parts[i].substring(index + 1); // 年龄或地址
outputBuilder.append(name).append(": ").append(value);
}
// 输出结果
System.out.println(outputBuilder.toString());
}
}
```
当你运行这段代码,它会输出:"姓名:张三,年龄:20,地址:北京"
阅读全文