java如何改变字符
修改字符串中的字符
在Java中,字符串是不可变的,无法直接修改某个字符。需要通过创建新字符串的方式间接实现字符替换。
使用 substring 和字符串拼接:
String original = "Hello";
String modified = original.substring(0, 1) + 'a' + original.substring(2);
// 结果为"Hallo"
转换为字符数组修改
将字符串转换为字符数组进行修改,再转换回字符串:
String str = "Hello";
char[] chars = str.toCharArray();
chars[1] = 'a';
String newStr = new String(chars);
// 结果为"Hallo"
使用StringBuilder
对于需要频繁修改字符串的情况,建议使用StringBuilder:
StringBuilder sb = new StringBuilder("Hello");
sb.setCharAt(1, 'a');
String result = sb.toString();
// 结果为"Hallo"
正则表达式替换
使用replaceAll方法进行模式替换:

String str = "Hello";
String newStr = str.replaceAll("e", "a");
// 结果为"Hallo"
注意事项
- 字符串在Java中是不可变对象,所有修改操作都会创建新字符串对象
- 对于单次修改,字符数组方法效率较高
- 对于多次修改,StringBuilder性能更好
- 正则表达式方法适合模式匹配替换场景






