mutao.net

いわゆる雑記。

String.replaceメソッド

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メソッドを使い文字列自体の変更をする場合、新たにインスタンスを作成する。