Java String `replace()` メソッドが機能しないように見えるのはなぜですか?

Patricia Arquette
リリース: 2024-11-19 21:59:03
オリジナル
720 人が閲覧しました

Why Does My Java String `replace()` Method Not Seem to Work?

Java String replace メソッドの失敗 [重複]

特定の Java 実装では、replace() メソッドがオブジェクト内の特定の文字列を適切に置換できないことが報告されています。与えられた文字列。この異常は、String オブジェクトの不変の性質によって発生します。

問題のあるコードの分析:

提供されたコード スニペット内:

< pre>
String delimiter = "";
String html = "ユーザー名 および パスワード";
マップ<文字列, 文字列> mp = new HashMap();
mp.put("USERNAME", "User A");
mp.put("PASSWORD", "B");
for ( Entry エントリ : mp.entrySet()) {
html.replace(delimiterentry.getKey() delimiter,entry.getValue());
}
🎜>

問題の説明:

Java の replace() メソッドは、元の String オブジェクトを変更しません。代わりに、置換が適用された新しい文字列を返します。これが論点です。元の HTML 変数は、元の String 値を保持し続けます。

解決策:

これを修正するには、コードを明示的に変更する必要があります。 replace() 操作の結果を HTML 変数に再割り当てします:

<p>html = html.replace(delimiterentry.getKey() delimiter,entry.getValue());<br>

結論:

replace() などのメソッドを利用する場合、String オブジェクトの不変性を理解することが重要です。返された String オブジェクトを元の変数に割り当てると、意図した置換が確実に有効になります。

以上がJava String `replace()` メソッドが機能しないように見えるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ソース:php.cn
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。
著者別の最新記事
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート