在 Java 中,String 对象是不可变的,一旦创建了一个 String 对象,就无法更改它的值。如果需要修改 String 对象的值,可以创建一个新的 String 对象来替代原来的对象。
以下是几种修改 String 对象值的方法:
String str = "Hello World";
str = str.replace("World", "Java");
System.out.println(str); // 输出 "Hello Java"
使用 StringBuilder 或 StringBuffer。StringBuilder 和 StringBuffer 是可变的字符串,它们提供了一些方法来修改字符串内容。例如:
StringBuilder sb = new StringBuilder("Hello World");
sb.replace(6, 11, "Java");
System.out.println(sb.toString()); // 输出 "Hello Java"
使用字符数组。可以将字符串转换为字符数组,然后直接修改数组中的元素,最后将修改后的字符数组转换回字符串。例如:
String str = "Hello World";
char[] charArray = str.toCharArray();
charArray[6] = 'J';
charArray[7] = 'a';
charArray[8] = 'v';
charArray[9] = 'a';
str = new String(charArray);
System.out.println(str); // 输出 "Hello Java"
需要注意的是,上述方法都是创建了新的字符串或可变字符串来替代原来的字符串,原来的字符串并没有被直接修改。