Java では、文字列を比較するために、compareTo、「==」、「equals」が提供されています。これらの違いを紹介しましょう。
例 1:compareデータのサイズを比較する (推奨される学習: Java コース)
compareTo(string) compareToIgnoreCase(String) compareTo(object string)
この例では、上記の関数は 2 つの文字列を比較し、int 型を返します。文字列がパラメータ文字列と等しい場合は 0 が返され、文字列がパラメータ文字列より小さい場合は戻り値が 0 より小さくなり、文字列がパラメータ文字列より大きい場合は戻り値が 0 より大きくなります。
文字列のサイズを判断する基準は、辞書内の順序に基づいています。
package com.de.test; /** * Java字符串比较大小 */ public class StringA { public static void main(String[] args){ String str = "String"; String anotherStr = "string"; Object objstr = str; System.out.println(str.compareTo(anotherStr)); System.out.println(str.compareToIgnoreCase(anotherStr)); System.out.println(str.compareTo(objstr.toString())); } }
上記のコードを実行して次の結果を生成します
-32 0 0
例 2: 比較するには、equals()、"== メソッドを使用します。 strings
equals() と == を使用します。違いは、equals は内容が等しいかどうかを比較し、== は参照された変数アドレスが等しいかどうかを比較することです。
package com.de.test; public class StringA { public static void main(String[] args){ String s1 = "hello"; String s2 = "hello"; String s3 = new String("hello"); String s4 = new String("hello"); System.out.println("s1:" + s1); System.out.println("s2:" + s2); System.out.println("s3:" + s3); System.out.println("s4:" + s4); System.out.println("----------比较内容是否相等---------------"); System.out.println(s1.equals(s2)); System.out.println(s2.equals(s3)); System.out.println(s3.equals(s4)); System.out.println("----------比较引用地址是否相等---------------"); System.out.println(s1 == s2); System.out.println(s2 == s3); System.out.println(s3 == s4); } }
上記のコードを実行すると、次の結果が生成されます
s1:hello s2:hello s3:hello s4:hello ----------比较内容是否相等--------------- true true true ----------比较引用地址是否相等--------------- true false false
以上がJavaで文字列を比較する方法の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。