Java での文字列の比較: ==
私たちは習慣的に if(str1==str2) を書くことがよくあります。書くと java で問題が発生する可能性があります。
example1:(推奨学習:java コース)
String a="abc"; String b="abc"
その場合、a== b は true を返します。 Java の文字列の値は不変であるため、同じ文字列のコピーが 1 つだけメモリに保存されるため、a と b は同じオブジェクトを指します;
example2:
String a=new String("abc"); String b=new String("abc");
この場合、a==b は false を返しますが、このとき、a と b は異なるオブジェクトを指します。
2.equals メソッドは、文字列の内容が同じかどうかを比較するために使用されます。 ## は true を返します。
String クラスの等しい比較の内容は、次のように同じ考え方です:
1,まずアドレスが等しいかどうかを判断し、等しい場合は true を返します。それらは等しい
2.
型が同じかどうかを比較し、false を返します
3. 受信オブジェクトを変換しますString に変換して長さを比較します。長さが等しくありません。false
4 を返します。長さが等しく、ループ内で文字配列の要素が比較されます。内容が異なる場合は、直ちに false を返します
を返します。
以上がJava は文字列が等しいかどうかを比較しますの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。