HOWTO · Java
在 Java 中替换字符串指定索引处的字符
本文介绍了在 Java 中替换字符串指定索引处的字符。
本页内容
本文将介绍在 Java 中,我们如何替换字符串中特定索引的字符。我们可以使用不同的方法来实现我们的目标,在下面的例子中提到。
在 Java 中使用 substring() 替换字符串索引处的字符
在我们的第一个例子中,我们有一个字符串-ab,其中有一个字符 A,这是一个大写字母,不符合句子的要求,我们想用一个小写字符 a 来替换它。
为了替换它,我们使用 String 类的 substring() 函数,它以一个范围或字符串的起始索引作为参数。我们的目标字符位于索引 8 的位置。
ab.substring(0, index) 返回字符串从 0 到第 8 位的部分。我们将这部分字符串与我们的新字符 a 连接起来,并使用 ab.substring(index + 1) 连接剩余的字符串。
public class ReplaceCharAtIndex {
public static void main(String[] args) {
String ab = "This is A String";
int index = 8;
String newString = ab.substring(0, index) + 'a' + ab.substring(index + 1);
System.out.println(newString);
}
}
输出:
This is a String
在 Java 中使用 StringBuilder() 替换字符串指定索引处的字符
我们有与前一个例子中使用的相同的字符串,但将使用 StringBuilder() 来创建一个新的可修改的字符串,因为在 Java 中,一个普通的字符串是不可改变的。由于 newString 现在是可修改的,我们可以使用它的 setChartAt() 方法将一个新的 char 设置为一个位置或索引。
newString.setCharAt(8, 'a') 将字符 a 设置在第 8 位。
public class ReplaceCharAtIndex {
public static void main(String[] args) {
String ab = "This is A String";
StringBuilder newString = new StringBuilder(ab);
newString.setCharAt(8, 'a');
System.out.println(newString);
}
}
输出:
This is a String
在 Java 中将字符串转换为字符数组以替换字符串指定索引处的字符
最后一个方法是使用 toCharArray() 将字符串 oldString 转换为 char 的数组。我们可以通过指定其位置来替换数组中的任何值。
我们可以看到,在 oldString 中有一个错别字,我们需要用字符( n )替换字符( m )。我们可以使用 charArray[index] = 'n'来替换我们在索引处的字符。
最后,我们必须使用 String.valueOf() 将 char[] 转换为字符串。输出显示该字符已被替换。
public class ReplaceCharAtIndex {
public static void main(String[] args) {
String oldString = "This is an example strimg";
int index = 23;
char[] charArray = oldString.toCharArray();
charArray[index] = 'n';
String newString = String.valueOf(charArray);
System.out.println(newString);
}
}
输出:
This is an example string