1

重複の可能性:
Java文字クラスで空の文字を表す方法

java.lang.Stringで定義されている置換関数を使用しており、「」(空白の文字列)に相当するものとして「\ 0」を使用しようとしましたが、空白の文字列ではなくスペースが追加されます。

空白の文字列に相当する文字はありますか?

4

5 に答える 5

6

「空のキャラクター」のようなものはありません。Acharは値型であるため、値が必要です。値がないということは、char-がないということです。そのため、空の文字列(つまり、「文字なし」)とnull許容文字は使用できますが、「空の文字」は使用できません。

とにかく、このString.replace(char, char)メソッドは、ある文字を別の文字に置き換えることを目的としています。この操作は、既知のサイズの単一のブロックを割り当てる必要があることを意味するため、非常に簡単です。実装String.replaceAll(string,string)するのはかなり複雑な方法ですが、それが異なる理由です。

残念ながらString.replace(char,string)方法はありませんが、その理由をご理解いただければ幸いです。

于 2012-11-09T05:48:24.847 に答える
1

String与えられた中には無限に多くの空白がありますString...間'a'に何も'b'あり"ab"ませんか?ゼロ除算のようなものです!

于 2012-11-09T05:44:27.713 に答える
1

「何か」を「」に置き換えたいと思いますが、その逆はできません...

       String ou="test";
       ou = ou.replace("t", "");
       System.out.println(ou);

出力は次のようになります。es

置換のcharバージョンでは、''は有効ではないため、これは機能しませんchar

于 2012-11-09T05:49:57.183 に答える
1

文字を削除する場合は、String.replace(char、char)を使用できません。空の文字はありません。このメソッドは文字列の長さを変更することはなく、文字を別の文字に置き換えるだけです。

String.replaceAll(java.lang.String、java.lang.String)(またはreplaceFirst)を使用する必要があります

"ababababa".replaceAll("a", ""); // returns "bbbb"
于 2012-11-09T05:53:56.587 に答える
0

ありませんが、があることに注意してください。したがって、最初の引数として文字列を使用し、2番目の引数として「」を使用しString.replace(CharSequence, CharSequence)て呼び出すことができるはずです。String.replace

于 2012-11-09T05:46:04.387 に答える