ホームページ  >  記事  >  Java  >  java と == の違い

java と == の違い

(*-*)浩
(*-*)浩オリジナル
2019-11-15 09:22:589110ブラウズ

java と == の違い

java9 サンプル コード: (推奨される学習: java コース )

String str1 = "abc";
String str2 = "abc";
String str3 = new String("abc");
String str4 = new String("abc");
当:  str1 == str2    输出:true    当:str1.equals(str2); 输出:true
当:  str1 == str3 输出:false      当:str1.equals(str3); 输出:true
当:  str3 == str4 输出:false      当:str3.equals(str4); 输出:true

関連する詳細:

- String で intern メソッドを使用できます。文字列オブジェクトには、定数プール内にそれと等しい文字列への参照があります。

str3.intern() == str4.intern()  输出:true
str1.intern().equals(str2.intern())  输出:true
str1.intern() == str1   输出:false
- String str = new String("abc");创建了几个对象?

まず、存在するかどうかを確認します。定数プール内の "abc" です。この文字列が存在する場合 (String str = "abc"; 表示される場合)、1 つ作成され、存在しない場合は 2 つ作成されます (定数プールに 1 つ、ヒープに 1 つ)。

equals と ==

For == の違い:

基本データの変数に作用しますタイプを指定し、保存されている「値」が等しいかどうかを直接比較します。

参照型変数に作用し、比較はポイントされるオブジェクトのアドレスになります。

equals の場合:

equals メソッドは基本データ型の変数には適用できません。

Object の等しいメソッド 書き換えられた場合は、参照型変数が指すオブジェクトのアドレスが比較され、それ以外の場合は内容が比較されます。

以上がjava と == の違いの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。