JavaのString.intern()とは何ですか?

Javanostring Intern Toha Hedesuka



Javaでは、「 インターン() 」メソッドは、大量の文字列にデータが格納されている場合に、同じ要素を持つ文字列が同じメモリを共有するようにするために使用されます。この方法は、プログラムのメモリ空間を削減するのに非常に役立ちます。たとえば、従業員名の膨大なリストがあるとします。 ジャック 』が10回も出てきます。 ” インターン() ” メソッドは、” ジャック 」はメモリ内で 1 つのスペースのみを占めます。

この投稿では、Java での String.intern() メソッドの使用法について説明します。







JavaのString.intern()とは何ですか?

インターン() Java の ” メソッドは、指定された文字列オブジェクトへの参照を返すために利用されます。ただし、同じ内容/データを持つ文字列オブジェクトが文字列プールに存在する場合は、前の文字列の参照が返されます。さらに、文字列が文字列プールに存在しない場合は、新しい文字列とその参照が文字列プールに追加されます。



構文

記載されているメソッドを利用するには、以下の構文に従うだけです。



インターン ( )

この例では、「」を使用する必要がある理由について説明します。 インターン() Java の「」メソッドを使用して文字列がヒープ内に作成される場合 弦() 」コンストラクター。まず、「」を使用して文字列オブジェクトが作成されます。 弦() 」コンストラクター。その後、文字列のデータがパラメータとしてこのオブジェクトに渡され、変数に格納されます。





ある = 新しい ( 「Linuxhint へようこそ。」 ) ;

同じ手順に従って、別の文字列オブジェクトが作成されます。

b = 新しい ( 「Linuxhint へようこそ」 ) ;

「」を呼び出します println()」メソッドを使用し、「a=b」を設定します ” をこのメソッドの引数として指定します。各文字列にはメモリ内に独自のスペースがあるため、結果は false として返されます。



システム プリントイン ( ある == b ) ;

上記の例の出力が false を返すことがわかります。

例 1: String オブジェクトをチェックする String.intern() メソッド

この例では、「」を使用して 2 つの文字列オブジェクトが作成されます。 弦() ” コンストラクターを作成し、文字列が引数としてコンストラクターに渡されます。次に、「」を呼び出します。 インターン() 」メソッドを文字列ごとに実行し、最初の文字列を変数「」に格納します ある 」と「」の2番目です。 b ”。状態を確認してください」 a=b ”を使用し、” println() ” と入力して結果を表示します。

ある = 新しい ( 「Linuxhint へようこそ」 ) インターン ( ) ;
b = 新しい ( 「Linuxhint へようこそ」 ) インターン ( ) ;
システム プリントイン ( ある == b ) ;

その結果、「」が返されます。 真実 ” の値は、” インターン() 」メソッドは、各文字列が文字列データを保存するために同じメモリ内の領域を占有することを保証します。

例 2: 文字列と文字列オブジェクトをチェックする String.intern() メソッド

この例では、さまざまな文字列が作成され、さまざまな変数に保存されます。この目的のために、まず変数が文字列値「」で初期化されます。 Linux ”:

ある = 「リナックス」 ;

「」を活用してください。 インターン() 文字列「」にアクセスして「」メソッドを実行します。 ある ”を変数”に格納します。 b ”:

b = a. インターン ( ) ;

新しい文字列型オブジェクトは、「」の助けを借りて作成されます。 弦() ” コンストラクターに「」を渡します。 Linux ” をこのコンストラクターのパラメーターとして使用します。次に、それを変数「」に格納します。 c ”:

c = 新しい ( 「リナックス」 ) ;

「」を呼び出します インターン() 変数「」にアクセスしてメソッドを実行します。 c 」を実行し、結果を「」に保存します。 d ”:

d = c. インターン ( ) ;

次に、これらの作成された文字列を相互に比較してください。そのために、「」を呼び出します。 println() ” メソッドを使用し、以下のコード スニペットに従ってパラメーターを渡します。

システム プリントイン ( ある == b ) ;
システム プリントイン ( ある == c ) ;
システム プリントイン ( ある == d ) ;
システム プリントイン ( b == c ) ;
システム プリントイン ( b == d ) ; システム プリントイン ( c == d ) ;

対応する各ステートメントの出力がコンソールに表示されます。出力を各ステートメントにマッピングしました。

Java の string.intern() メソッドについては以上です。

結論

String.intern() Java の 」メソッドは、指定された文字列オブジェクトへの参照を返します。ただし、同じ内容/データを持つ文字列オブジェクトが文字列プールに存在する場合は、前の文字列の参照が返されます。この投稿では、Java の String.intern() メソッドのさまざまな使用例について説明しました。