StringBuilder 基础
本课属于 Coddy Java 学习旅程的“逻辑与流程”单元。第 44 课,共 59 课。
StringBuilder 用于创建可变(可修改)的字符串。当你需要多次修改字符串时,它比普通的 String 拼接效率更高。
创建一个初始文本为以下内容的 StringBuilder:
StringBuilder sb = new StringBuilder("Hello");使用 append() 添加更多文本:
sb.append(" World");运行上面的代码后,sb 中包含:
Hello World
我们来用 insert() 在指定位置添加文本:
StringBuilder sb = new StringBuilder("Java");
sb.append(" is"); // 在末尾添加
sb.insert(0, "Hey "); // 在位置 0(开头)添加执行上述代码后,sb 中包含:
Hey Java is
将 StringBuilder 转换为 String:
当你需要将结果作为 String 返回或存储时,请使用 toString():
StringBuilder sb = new StringBuilder("Hello");
sb.append(" World");
String result = sb.toString(); // 转换为 String
System.out.println(result); // 输出:Hello World为什么要使用 toString()? 返回 String 类型的方法不能直接返回 StringBuilder,你必须先使用 toString() 将其转换。
挑战
简单创建一个名为 buildPhrase 的方法,它接受三个参数:
- 一个 String(
start),表示短语的开头 - 一个 String(
middle),表示中间部分 - 一个 String(
end),表示结尾
该方法应:
- 使用开头字符串创建一个 StringBuilder
- 添加一个空格和中间字符串
- 添加一个空格和结尾字符串
- 在末尾添加一个感叹号
- 返回最终字符串
返回消息应为:
- 如果任何输入为 null:返回 "Invalid input"
- 如果操作成功:返回拼接好的短语
亲手试试
import java.util.Scanner;
public class Main {
public static String buildPhrase(String start, String middle, String end) {
// 在这里编写代码
}
public static void main(String[] args) {
Scanner scanner = new Scanner(System.in);
String start = scanner.nextLine();
String middle = scanner.nextLine();
String end = scanner.nextLine();
if (start.equals("null")) start = null;
if (middle.equals("null")) middle = null;
if (end.equals("null")) end = null;
System.out.println(buildPhrase(start, middle, end));
}
}这节课包含一个小测验。开始学习即可作答,并记录你的进度。
逻辑与流程中的所有课
自己练习: Java 在线编译器