Java文字列の比較
Javaで文字列を比較する場合、equals()メソッドは==よりも優れています.これはjavaにスタックとhip領域が存在し、人間から見れば同じ文字列であるが、異なるhip領域を指す可能性があるためである.
例:
アレイの場合
例:
String name1 = "이정우";
String name2 = "이정우";
name1 == name2 ==>True
name1.equlas(name2) ==>True
この場合、==を使用して同じStringオブジェクト(heap領域)を示すことができます.String name1 = "이정우";
String name2 = new String("이정우");
name1 == name2 ==>False
name1.equlas(name2) ==>True
ただし、name 2などの新しいオブジェクトとして作成されると、name 1のマイルストーンとは異なるマイルストーンスタック領域に格納され、==と確認されると異なる値が得られます.したがって、文字の外観が同じかどうかを簡単にチェックするだけでは、正確な値を得るにはequalsを使用する必要があります.アレイの場合
String[] a = new String[3];
a[0] = "이정우";
a[1] = "이정우";
a[2] = new String("이정우");
a[0] == a[1] => True
a[0] == a[2] => False
a[0].equlas(a[2]) => True
同じ配列の新しいオブジェクトとして作成する場合は、equalsを使用して新しいStringオブジェクトを示す必要があります.参考内容:これがジャワ、公費教育
Reference
この問題について(Java文字列の比較), 我々は、より多くの情報をここで見つけました https://velog.io/@tkdeod1234/자바-문자열-비교テキストは自由に共有またはコピーできます。ただし、このドキュメントのURLは参考URLとして残しておいてください。
Collection and Share based on the CC Protocol