2011-01-19 8 views
6

android/javaでは、一部の文字列のスペースを+に置き換えようとしていますが、動作しないようです。私はそれを間違っているのですか? replaceメソッドは文字列を変更ができますが、再保存する必要があり、新しいものを作成しないようにandroid/java、replace()の文字列は何もしません

String string="Hello world"; 
string.replace(" ", "+"); 
+0

私はそれがこの例のためだけであると仮定しますが、変数 "string"の名前を指定しないことを指摘したいと思います。 –

+1

URLエンコードの目的でこれを行う場合は、 URLEncoderクラス – kgutteridge

答えて

26

Stringオブジェクトは、不変である:Javaでは

String string="Hello world"; 
string = string.replace(" ", "+"); 
+0

+1正確に。 'String.replace'は文字列を返します。それはアクセサであり、直接ミューテータではありません。 –

+0

ああもちろんです。ありがとう。 – jor

+0

@jor - これが正解であれば、隣にあるチェックボックスをオンにすると、@ Cristianはクレジットを得ます。 – I82Much

1

を、StringBufferクラスを提供します可変文字列。 replaceメソッドは同じオブジェクトを返します。

関連する問題