2011-11-18 18 views
15

単に私が 私のコード..アンドロイドに別の文字を置き換えたい:文字をアンドロイドの別の文字で置き換える?

et = (EditText) findViewById(R.id.editText1); 
String str = et.getText().toString(); 
str.replace(' ','_'); 
et.setText(str); 
System.out.println(str); 

しかし、ここでは「スペース」を「アンダースコア」で置き換えられることはありません..私も..あまりに

を他の文字を試してみました

助けてください!

答えて

54

文字列はJavaで不変です。replaceは既存の文字列を変更しません。新しい文字列を返します。あなたが欲しい:

str = str.replace(' ','_'); 

(これは間違いなく重複しているが、私は適切なものを見つけるために、今すぐに十分な時間を持っていない...)

+0

感謝を...それは動作します! – prg

6

文字列は不変であり、あなたはそれを変更することはできません。だから、あなたがこれを実行する必要があります。

str = str.replace(' ','_'); 
1

を参照してくださいコード:即答のための

et = (EditText) findViewById(R.id.editText1); 
String str = et.getText().toString(); 
str = str.replace(' ', '_'); 
System.out.println(str); 
関連する問題