Java String compareTo() メソッド:例での使用方法
Java の compareTo() メソッドとは?
compareTo() 2 つの文字列を辞書式に比較するために使用されます。両方の文字列の各文字が Unicode 値に変換されます。ただし、両方の文字列が等しい場合、このメソッドは 0 を返します。それ以外の場合は、負または正の値のみが返されます。
Java String compareTo() メソッドは、インターフェース java.lang.Comparable で定義されています
構文:Java で compareTo() メソッドを記述する方法 :
public int compareTo(String str)
パラメータ入力:
str – Java の compareTo() 関数は、1 つの入力文字列データ型のみを受け入れます。
メソッドの戻り値:
この compareTo() Java メソッドは、2 つの文字列間の辞書式比較に基づく int データ型を返します。
- <0 を返す場合、メソッドを呼び出す文字列は辞書順で最初です
- ==0 を返す場合、2 つの文字列は辞書的に同等です
- > 0 を返す場合、Java の compareTo() メソッドに渡されるパラメータは、辞書順で最初になります。
Java 文字列の compareTo() メソッドの例:
compareTo() Java の例 1:
public class Sample_String { public static void main(String[] args) { String str_Sample = "a"; System.out.println("Compare To 'a' b is : " + str_Sample.compareTo("b")); str_Sample = "b"; System.out.println("Compare To 'b' a is : " + str_Sample.compareTo("a")); str_Sample = "b"; System.out.println("Compare To 'b' b is : " + str_Sample.compareTo("b")); } }
出力
'a' b と比較:-1
'b' a と比較:1
'b' b と比較:0
ここで、
- 文字 a はアルファベット順で b の前に来ます。したがって、出力は -1 です
- 文字 b は、アルファベット順で a の後に来ます。したがって、出力は 1 です
- 文字 b は同等であるため、出力は 0 です。
結果で大文字と小文字を区別したくない場合は、「compareToIgnoreCase」メソッドを使用できます。 Java の compareTo() の例で理解しましょう。
compareTo() Java の例 2:
public class Sample_String { public static void main(String[] args) { //Compare to a String String str_Sample = "RockStar"; System.out.println("Compare To 'ROCKSTAR': " + str_Sample.compareTo("rockstar")); //Compare to - Ignore case System.out.println("Compare To 'ROCKSTAR' - Case Ignored: " + str_Sample.compareToIgnoreCase("ROCKSTAR")); } }
出力
「ROCKSTAR」との比較:-32
「ROCKSTAR」との比較 – 大文字と小文字を区別しない:0
Java で compareTo() メソッドを使用する場合
Java String compareTo() メソッドは、文字列の自然な並べ替えを実行するために使用されます。自然な並べ替えとは、オブジェクトに適用される並べ替え順序を意味します。たとえば、文字列の字句順、整数の並べ替えの数値順などです。
字句の順序は、アルファベット順に他なりません。 compareTo() Java メソッドは、同じ位置にある文字列内の文字を順次比較します。
このメソッドでは、最初の文字列が常に 2 番目の文字列より辞書的に上位にある場合、正の数を返します。
a1> a2 の場合、負の数を返します
a1
a1 ==a2 の場合、0 を返します
Java String compareTo() の例で理解しましょう。
compareTo() Java の例 3:
出力:
文字列 1:Guru1public class Compare {
public static void main(String[] args) {
String s1 = "Guru1";
String s2 = "Guru2";
System.out.println("String 1: " + s1);
System.out.println("String 2: " + s2);
// Compare the two strings.
int S = s1.compareTo(s2);
// Show the results of the comparison.
if (S < 0) {
System.out.println("\"" + s1 + "\"" + " is lexicographically higher than " + "\"" + s2 + "\"");
} else if (S == 0) {
System.out.println("\"" + s1 + "\"" + " is lexicographically equal to " + "\"" + s2 + "\"");
} else if (S > 0) {
System.out.println("\"" + s1 + "\"" + " is lexicographically less than " + "\"" + s2 + "\"");
}
}
}
文字列 2:Guru2
「Guru1」は「Guru2」より辞書的に上位です
Java
- Java の String Length() メソッド:例で見つける方法
- 部分文字列と例を含む Java String indexOf() メソッド
- Java String charAt() メソッドと例
- Java String contains() メソッド |部分文字列を例でチェック
- 例を使用したJava文字列のendsWith()メソッド
- Java 文字列 replace()、replaceAll() および replaceFirst() メソッド
- Java BufferedReader:例を使用して Java でファイルを読み取る方法
- Java で Char を String に変換する方法 (例)
- 再帰を使用してJavaで文字列を逆にする方法
- Python Print() ステートメント:例を使用して印刷する方法
- 例を使用した Python 文字列 count()