📜  java 在索引处的字符串中插入字符 - Java (1)

📅  最后修改于: 2023-12-03 15:01:33.491000             🧑  作者: Mango

在Java字符串中插入字符

在Java中,字符串是不可变的,也就是说一旦创建了一个字符串,就不能改变它的内容,任何操作都会返回一个新的字符串。如果需要在一个字符串中插入字符,可以使用StringBuilderStringBuffer类。

使用StringBuilder类
String originalString = "Java索引在此处的字符串";
StringBuilder stringBuilder = new StringBuilder(originalString);
int index = 4;
char insertChar = ' ';
stringBuilder.insert(index, insertChar);
String newString = stringBuilder.toString();
System.out.println(newString); // 输出 "Java 在索引处的字符串"

以上代码使用StringBuilder类来插入一个空格字符,将结果保存在一个新的字符串中。

使用StringBuffer类
String originalString = "Java索引在此处的字符串";
StringBuffer stringBuffer = new StringBuffer(originalString);
int index = 4;
char insertChar = ' ';
stringBuffer.insert(index, insertChar);
String newString = stringBuffer.toString();
System.out.println(newString); // 输出 "Java 在索引处的字符串"

以上代码使用StringBuffer类来插入一个空格字符,将结果保存在一个新的字符串中。

注意,StringBuilderStringBuffer的区别在于StringBuilder是非线程安全的,而StringBuffer是线程安全的。如果在多线程环境下使用,建议使用StringBuffer类。

使用substring方法

除了使用StringBuilderStringBuffer类插入字符外,还可以使用字符串的substring方法来实现。

String originalString = "Java索引在此处的字符串";
int index = 4;
char insertChar = ' ';
String newString = originalString.substring(0, index) + insertChar + originalString.substring(index);
System.out.println(newString); // 输出 "Java 在索引处的字符串"

以上代码使用substring方法将原字符串拆分成两个逻辑部分,并在它们之间插入一个空格字符。这种方法更适合于短字符串操作。