Java での文字列比較

PHPz
PHPzオリジナル
2024-08-30 16:27:551157ブラウズ

Java では、文字のシーケンスは文字列として知られています。これは不変であり (作成後に変更することはできません)、いくつかの操作の実行に役立ちます。また、文字列の比較は Java の一般的なプログラミング タスクです。これはいくつかの方法で実行でき、次のセクションで詳しく説明します。

Java で文字列を比較するには?

すでに説明したように、文字列比較はさまざまな方法を使用して実行できます。それらは次のとおりです:

無料ソフトウェア開発コースを始めましょう

Web 開発、プログラミング言語、ソフトウェア テスト、その他

  • equals() メソッドの使用
  • compareTo() メソッドの使用
  • equalsIgnoreCase() メソッドの使用
  • compareToIgnoreCase() メソッドの使用

1. Equals() メソッド

equals() メソッドは、文字列の内容に基づいて 2 つの文字列を比較します。文字列の大文字と小文字が同じでない場合 (つまり、大文字または小文字)、等しくないものとみなされます。以下は、equals() メソッドの例です。

プログラム

public class StringComparisonExamples {
public static void main(String[] args) {
String str1 = "Balloon";
String str2 = "Balloon";
//string comparison using equals method
if (str1.equals(str2)) {
System.out.println("Both str1 : " + str1 + " and str2 : "+ str2 +" are equal");
}
else
{
System.out.println("Both str1 : " + str1 + " and str2 : "+ str2 +" are not equal");
}
String str3 = "Happy";
String str4 = "hai";
if (str3.equals(str4)) {
System.out.println("Both str3 : " + str3 + " and str4 : "+ str4 +" are equal");
}
else
{
System.out.println("Both str3 : " + str3 + " and str4 : "+ str4 +" are not equal");
}
String str5 = "Happy";
String str6 = "hard";
if (str5.equals(str6)) {
System.out.println("Both str5 : " + str5 + "and str6 : "+ str6 +" are equal");
}
else
{
System.out.println("Both str5 : " + str5 + " and str6 : "+ str6 +" are not equal");
}
}
}

出力:

Java での文字列比較

上記コードの説明

  • ここで、2 つの文字列 str1 と str2 は、大文字と小文字が同じなので等しいです。 (キャメルケース)。
  • また、Str3 と Str4、str5 と str6 は等しくありません。

2. Compare to() メソッド

このメソッドでは、値が辞書順に比較され、整数型の値が返されます。値は、最初の文字列が 2nd 文字列と等しいか、それより小さいか、またはそれより大きいかに基づきます。

2 つの文字列 str1 と str2 が存在し、

  • str1 == str2 の場合、0
  • if str1 > str2 、次に +ve 値
  • if str1

プログラム

//Java program to demonstrate compareTo method
public class StringComparisonExamples {
public static void main(String[] args) {
String str1 = "Balloon";
String str2 = "Balloon";
String str3 = "Happy";
String str4 = "hai";
//string comparison using compareTo method
System.out.println(str1.compareTo(str2));
System.out.println(str3.compareTo(str4));
String str5 = "Happy";
String str6 = "Hardest one";
System.out.println(str5.compareTo(str6));
}
}

出力:

Java での文字列比較

上記コードの説明

  • 2 つの文字列 str1 と str2 は辞書編集的に等しいため、0 が返されます。
  • 同時に、辞書編集上、str3 は str4 より小さく、str5 は str6 より小さくなります。したがって、負の値が返されます。

3. Equals Ignore Case メソッド

このメソッドを使用すると、文字列が大文字か小文字かを考慮せずに 2 つの文字列が比較されます。

プログラム

//Java program to demonstrate equalsIgnoreCase method
public class StringComparisonExamples {
public static void main(String[] args) {
String str1 = "Balloon";
String str2 = "balloon";
//string comparison using equalsIgnoreCase method
System.out.println(str1.equalsIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println(str3.equalsIgnoreCase(str4));
String str5 = "Happy";
String str6 = "hard";
System.out.println(str5.equalsIgnoreCase(str6));
}
}

出力:

Java での文字列比較

上記コードの説明

  • equalsIgnoreCase メソッドが使用されているため、str1 と str2 は、大文字と小文字が異なっていても等しくなります。したがって、True が返されます。
  • str3 と str4、str5 と str6 の場合、2 つの文字列は異なります。したがって、 false が返されます。

4. Ignore Case メソッドと比較

このメソッドは、文字列が辞書順に比較される CompareTo メソッドに似ています。違いは、文字列が大文字であるか小文字であるかにかかわらず、比較は影響を受けないことです。

プログラム

//Java program to demonstrate compareToIgnoreCase method
public class StringComparisonExamples {
public static void main(String[] args) {
String str1 = "Balloon";
String str2 = "balloon";
//string comparison using compareToIgnoreCase method
System.out.println(str1.compareToIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println(str3.compareToIgnoreCase(str4));
String str5 = "Happy";
String str6 = "Hard";
System.out.println(str5.compareToIgnoreCase(str6));
}
}

出力:

Java での文字列比較

上記コードの説明

  • ここでは、compareTo と Ignorecase の組み合わせが行われます。 str1 と str2 は大文字小文字を区別せずに等しいため、0 が返されます。
  • 同様に、str3 が str4 より大きい場合は正の値が返され、str5 が str6 より小さい場合は負の値が返されます。

ここで、文字列比較をよりよく理解するために、単一のプログラムで上記のメソッドをすべて見てみましょう。

プログラム

//Java program to demonstrate different methods for string comparison
public class StringComparisonExamples {
public static void main(String[] args) {
String str1 = "Balloon";
String str2 = "Balloon";
System.out.println("Comparison of str1 : " + str1 + " and str2 : " + str2);
System.out.println("Using equals method ");
//string comparison using equals method
if (str1.equals(str2)) {
System.out.println("Both are equal");
}
else
{
System.out.println("Both are not equal");
}
System.out.println("Using compareTo method ");
//string comparison using compareTo method
System.out.println(str1.compareTo(str2));
System.out.println("Using equalsIgnoreCase method ");
//string comparison using equalsIgnoreCase method
System.out.println(str1.equalsIgnoreCase(str2));
System.out.println("Using compareToIgnoreCase method ");
//string comparison using compareToIgnoreCase method
System.out.println(str1.compareToIgnoreCase(str2));
String str3 = "Happy";
String str4 = "hai";
System.out.println("\nComparison of str3 : " + str3 + " and str4 : " + str4);
System.out.println("Using equals method ");
if (str3.equals(str4)) {
System.out.println("Both are equal");
}
else
{
System.out.println("Both are not equal");
}
System.out.println("Using compareTo method ");
System.out.println(str3.compareTo(str4));
System.out.println("Using equalsIgnoreCase method ");
System.out.println(str3.equalsIgnoreCase(str4));
System.out.println("Using compareToIgnoreCase method ");
System.out.println(str3.compareToIgnoreCase(str4));
String str5 = "Happy";
String str6 = "hard";
System.out.println("\nComparison of str5 : " + str5 + " and str6 : " + str6);
System.out.println("Using equals method ");
if (str5.equals(str6)) {
System.out.println("Both are equal");
}
else
{
System.out.println("Both are not equal");
}
System.out.println("Using compareTo method ");
System.out.println(str5.compareTo(str6));
System.out.println("Using equalsIgnoreCase method ");
System.out.println(str5.equalsIgnoreCase(str6));
System.out.println("Using compareToIgnoreCase method ");
System.out.println(str5.compareToIgnoreCase(str6));
}
}

出力:

Java での文字列比較

結論

文字列は一連の文字であり、そのオブジェクトは不変です。文字列を比較するために使用できる、equals、compareTo などのさまざまなメソッドがあります。これらの方法はすべて要件に基づいて使用されます。これらについては、上のセクションで詳しく説明されています。

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

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