Java 字符串(String / StringBuilder)
字符串是编程中最常用的数据类型之一。Java 提供了 String、StringBuilder 和 StringBuffer 三个字符串类。理解字符串的特性和使用方法是处理文本数据的基础。
String 类与不可变性
String 的不可变性
String 是不可变的(immutable),一旦创建就不能修改。
String str = "Hello";
str = str + " World"; // 不是修改原字符串,而是创建新字符串
原理:
- String 对象创建后,其内容不能改变
- 每次"修改"实际上创建了新的 String 对象
- 原对象如果没有引用,会被垃圾回收
String s1 = "Hello";
String s2 = s1; // s2 和 s1 指向同一个对象
s1 = s1 + " World"; // s1 指向新对象,s2 仍然指向 "Hello"
System.out.println(s1); // "Hello World"
System.out.println(s2); // "Hello"