String.replace
- 文字列を置き換えるためのメソッド
- 文字列の置き換えは、その文字列の先頭から最後まで再帰的に行われる
- replaceメソッドは char型 と CharSequence型の因数を2つ受け取るメソッドが提供されている
public String replace (char oldchar, char newChar) {
...
}
public String replace (CharSequence oldchar, CharSequence newChar) {
...
}
留意事項
- replace.Allメソッドがあるためreplaceメソッドは最初に見つかった文字しか置き替えないと思われがち
- replace.Allメソッドは正規表現を引数として文字列の置き換えを行う
- 最初に見つかった文字しかた置き換えないのはreplace.Firstで、こちらも引数に正規表現をとる
- char型とCharSequence型をreplaceメソッドの引数に渡すと2つのデータ型をオーバーロードが存在しないためコンパイルエラーが生じる
str.replace("hoge", 'h');
- String型はImmutable(不変)なのでreplaceメソッドを使い文字列自体の変更をする場合、新たにインスタンスを作成する。