ホームページ > Java > &#&チュートリアル > 文字列管理における Java の `intern()` メソッドの役割は何ですか?

文字列管理における Java の `intern()` メソッドの役割は何ですか?

Linda Hamilton
リリース: 2024-12-14 00:21:10
オリジナル
902 人が閲覧しました

What's the Role of Java's `intern()` Method in String Management?

文字列リテラルインターニングと intern() メソッド

Java には、文字列リテラルインターニングとして知られる便利な機能があり、文字列リテラルを自動的に格納します。文字列プール。ただし、intern() メソッドは、String を管理するための重要なツールであることに変わりはありません。

intern() メソッドは、プールに String が存在する場合、プールから String をフェッチすることを目的としています。そうでない場合は、新しい String オブジェクトがプールに追加され、そのオブジェクトへの参照が返されます。

String リテラルはデフォルトでインターンされますが、intern() メソッドは new String() で作成された String にとって価値があります。 。次の例を考えてみましょう。

String s1 = "Rakesh";
String s2 = "Rakesh";
String s3 = "Rakesh".intern();
String s4 = new String("Rakesh");
String s5 = new String("Rakesh").intern();
ログイン後にコピー

これらの変数に == 演算子を使用すると、次の結果が生成されます。

s1 and s2 are same
s1 and s3 are same
s1 and s5 are same
ログイン後にコピー

ここで、s4 のみが異なる動作をします。これは、s4 が new と を使用して明示的に作成されたためです。

結論として、intern() メソッドは、単一の不変 String インスタンスのみが返されることを保証します。 new を使用して intern() 呼び出しを省略する場合を除き、String の作成方法に関係なく、String 定数プール。

以上が文字列管理における Java の `intern()` メソッドの役割は何ですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

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