【Java】StringクラスのcompareTo()メソッドとは

JavaのStringクラスは、文字列を扱うための重要なクラスです。その中で、compareTo()メソッドは、2つの文字列を比較するために使用されます。このメソッドは、文字列の辞書的な順序を比較し、比較結果を整数値で返します。

この記事では、compareTo()メソッドの基本的な使い方と動作について詳しく説明します。

目次

compareTo()メソッドとは

compareTo()メソッドの構文

public int compareTo(String anotherString)

メソッドの説明

compareTo()メソッドは、指定された文字列(anotherString)とこの文字列を辞書的に比較します。比較の結果、次のような値が返されます。

  • 0:この文字列と指定された文字列が等しい
  • 正の値:この文字列が指定された文字列よりも辞書的に後に位置する
  • 負の値:この文字列が指定された文字列よりも辞書的に前に位置する

compareTo()メソッドの使用例

public class CompareExample {
    public static void main(String[] args) {
        String str1 = "apple";
        String str2 = "banana";
        String str3 = "apple";

        // str1とstr2の比較
        int result1 = str1.compareTo(str2);
        System.out.println("str1.compareTo(str2): " + result1); // 出力: -1

        // str1とstr3の比較
        int result2 = str1.compareTo(str3);
        System.out.println("str1.compareTo(str3): " + result2); // 出力: 0

        // str2とstr1の比較
        int result3 = str2.compareTo(str1);
        System.out.println("str2.compareTo(str1): " + result3); // 出力: 1
    }
}

compareTo()メソッドの注意点

  • compareTo()メソッドは、文字列の辞書的な比較を行います。大文字と小文字は異なる文字として扱われます。したがって、”apple”と”Apple”は異なる文字列として扱われます。
  • compareTo()メソッドは、Unicodeコードポイントに基づいて文字列を比較します。このため、文字列の比較は文字のUnicode値に基づいて行われます。

まとめ

JavaのStringクラスのcompareTo()メソッドは、文字列を辞書的に比較するための便利なメソッドです。このメソッドを使用することで、文字列の大小関係を簡単に判定できます。ただし、大文字と小文字の違いやUnicodeコードポイントに注意する必要があります。compareTo()メソッドは、文字列のソートや順序付けなど、さまざまな場面で役立ちます。

目次