java如何修改字符
修改字符串中的字符
在Java中,字符串是不可变的,无法直接修改某个字符。需要通过创建新字符串或使用StringBuilder/StringBuffer类来实现。
使用substring和拼接

String original = "Hello";
String modified = original.substring(0, 1) + "a" + original.substring(2);
System.out.println(modified); // 输出 "Hallo"
使用StringBuilder
StringBuilder sb = new StringBuilder("Hello");
sb.setCharAt(1, 'a');
String modified = sb.toString();
System.out.println(modified); // 输出 "Hallo"
转换为字符数组修改
将字符串转换为字符数组进行修改,再转回字符串:

String str = "Hello";
char[] chars = str.toCharArray();
chars[1] = 'a';
String modified = new String(chars);
System.out.println(modified); // 输出 "Hallo"
替换特定字符
使用replace或replaceAll方法替换所有匹配字符:
String str = "Hello";
String modified = str.replace('e', 'a');
System.out.println(modified); // 输出 "Hallo"
使用正则表达式替换
通过正则表达式匹配并替换字符:
String str = "Hello";
String modified = str.replaceAll("e", "a");
System.out.println(modified); // 输出 "Hallo"
注意事项
- 字符串在Java中是不可变对象,任何修改操作都会创建新字符串
- 对于频繁修改操作,推荐使用
StringBuilder - 字符数组方式适合需要随机访问修改的场景
- 替换方法会修改所有匹配字符,需注意范围控制






