在 Java 中替換字串指定索引處的字元

Rupam Yadav 2023年10月12日
  1. 在 Java 中使用 substring() 替換字串索引處的字元
  2. 在 Java 中使用 StringBuilder() 替換字串指定索引處的字元
  3. 在 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
作者: Rupam Yadav
Rupam Yadav avatar Rupam Yadav avatar

Rupam Saini is an android developer, who also works sometimes as a web developer., He likes to read books and write about various things.

LinkedIn

相關文章 - Java Char

相關文章 - Java String