java-replace-character-at-index
Javaで文字列の特定のインデックスにある文字を置き換える
1. 前書き
このクイックチュートリアルでは、* Javaで_String_の特定のインデックスにある文字を置き換える方法を示します。*
元の_String、_を取得する単純なメソッドの4つの実装と、それを置き換える必要のあるインデックスを示します。
2. 文字配列を使用する
simple_char._の配列を使用した簡単なアプローチから始めましょう
ここでは、_String_を_char [] _に変換し、指定されたインデックスに新しい_char_を割り当てるという考え方があります。 最後に、その配列から目的の_String_を構築します。
public String replaceCharUsingCharArray(String str, char ch, int index) {
char[] chars = str.toCharArray();
chars[index] = ch;
return String.valueOf(chars);
}
これは低レベルの設計アプローチであり、多くの柔軟性を提供します。
3. _substring_メソッドの使用
より高レベルのアプローチは、_String_クラスの_substring()_メソッドを使用することです。
インデックスの前の元の_String_の部分文字列と、インデックスの後の元の_String_の部分文字列を連結して、新しい_String_を作成します。
public String replaceChar(String str, char ch, int index) {
return str.substring(0, index) + ch + str.substring(index+1);
}
4. _StringBuilder_の使用
link:/java-string-builder-string-buffer[_StringBuilder_]を使用して同じ効果を得ることができます。 メソッド_setCharAt():_を使用して、特定のインデックスの文字を置き換えることができます
public String replaceChar(String str, char ch, int index) {
StringBuilder myString = new StringBuilder(str);
myString.setCharAt(index, ch);
return myString.toString();
}
5. 結論
この記事では、Java __.__を使用して、_String_の特定のインデックスにある文字を置き換えるいくつかの方法に焦点を当てました。
_String_インスタンスは不変なので、新しい文字列を作成するか、__StringBuilder __を使用して可変性を持たせる必要があります。
いつものように、上記のチュートリアルの完全なソースコードはhttps://github.com/eugenp/tutorials/tree/master/java-strings[GitHubで]から入手できます。