ホームページ >Java >&#&チュートリアル >Java では、文字列の実装

Java では、文字列の実装

王林
王林転載
2023-08-27 15:09:11759ブラウズ

Java では、文字列の実装

文字列プーリングは、それぞれの個別の文字列値の 1 つのコピーが保存されるプロセスです。それ以外の場合、文字列は不変になります。このようにして、文字列に同じデータを含めることができ、同じメモリを共有できます。このようにして、必要なメモリが大幅に削減されます。

'intern' 関数が呼び出されるとき:

  • 2 つの文字列間の等しいかどうか、つまり文字列オブジェクトが文字列定数プール (SCP) に存在するかどうかをチェックします。

  • 利用可能な場合は、文字列がプールから取得されて返されます。それ以外の場合は、新しい文字列オブジェクトが作成され、プールに追加されます。文字列オブジェクトへの参照も返されます。

  • 2 つの文字列 'a' と 'b' について、a.equals(b) が true を返す場合に限り、a.intern() == b.intern( ) は true になります。 。

例を見てみましょう:

Example

デモンストレーション

public class Demo{
   public static void main(String[] args){
      String s1 = new String("Its");
      String s2 = s1.concat("sample");
      String s3 = s2.intern();
      System.out.println("Checking equality of object 2 and 3 :");
      System.out.println(s2 == s3);
      String s4 = "Its a sample";
      System.out.println("Checking equality of object 3 and 4 :");
      System.out.println(s3 == s4);
   }
}

出力

Checking equality of object 2 and 3 :
true
Checking equality of object 3 and 4 :
false

という名前のファイルDemo クラスには main 関数が含まれています。ここでは String オブジェクトの 3 つのインスタンスが定義されています。2 番目の文字列は、異なる値を持つ最初の文字列を連結したものです。 3 番目の文字列は、2 番目の文字列の「 intern 」関数を呼び出しています。これらの文字列は「==」演算子を使用して比較され、結果がコンソールに表示されます。

以上がJava では、文字列の実装の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事はtutorialspoint.comで複製されています。侵害がある場合は、admin@php.cn までご連絡ください。