java使用 .StringBuffer给出一个非空字符串 S 和一个整数 N (> 0)。 显示包含字符串 S 字符的字符串,在每个字符之间插入 N 个字符 *(星号)。
时间: 2023-05-10 18:56:06 浏览: 87
可以使用以下代码实现:
```
StringBuffer sb = new StringBuffer(S.length() + (S.length() - 1) * N);
for (int i = 0; i < S.length(); i++) {
sb.append(S.charAt(i));
if (i != S.length() - 1) {
for (int j = 0; j < N; j++) {
sb.append("*");
}
}
}
System.out.println(sb.toString());
```
这段代码首先创建了一个 StringBuffer 对象,用于存储最终的字符串。然后遍历原字符串 S 中的每个字符,将其添加到 StringBuffer 中,并在每个字符之间插入 N 个星号。最后将 StringBuffer 转换为字符串并输出即可。
相关问题
java使用 .StringBuffer给出一个非空字符串 S 和一个整数 N (> 0)。 显示包含字符串 S 字符的字符串,在字符串之间插入 N 个字符 *(星号)。
可以使用以下代码实现:
StringBuffer sb = new StringBuffer(S);
for (int i = 1; i <= N; i++) {
sb.insert(0, "*");
sb.append("*");
}
System.out.println(sb.toString());
StringBuffer给定一个非空字符串 S 和一个整数 N (> 0)。 输出一个字符串,其中包含字符串 S 的字符,中间插入 N 个字符 *(星号)
可以使用 StringBuffer 的 insert 方法来实现这个功能,代码如下:
```
String S = "hello";
int N = 3;
StringBuffer sb = new StringBuffer(S);
for (int i = 1; i < S.length(); i += 2) {
sb.insert(i, "*".repeat(N));
}
String result = sb.toString();
System.out.println(result);
```
这段代码会输出 `h*e*l*l*o`,其中每个相邻的字符之间都插入了 3 个星号。
阅读全文