Javaコラム Javaエンジニアのためのお役立ちコラム

JavaのcompareToの使い方を紹介!|compareToメソッドで様々な比較をしよう

2020年10月27日
SE
JavaのcompareToはどのような使い方をするのでしょうか。
PM
compareToメソッドは、値や文字列の比較のために使用します。値や文字列が等しいか、どちらが大きいかを判断できます。

JavaのcompareToの使い方とは?


今回は、JavaのcompareToメソッドの使用方法について説明します。

compareToメソッドは、値や文字列の比較のために使用します。
値や文字列が等しいか、どちらが大きいかを判断できます。
JavaのcompareToの使用方法に興味のある方はぜひご覧ください。

基本的な使い方

compareToメソッドは以下のような使い方をします。

実行結果は以下のようになります。
負値 : 変数1 < 変数2
0 : 変数1と変数2が等しい
正値 : 変数1 > 変数2

このように、値や文字列が等しいか、どちらが大きいかを判断できます。

Integer型の比較

Javaでは、compareToメソッドでInteger型の比較ができます。
実際のソースコードを見てみましょう。

実行結果は以下のようになります。

このように、値が等しいか、どちらが大きいかを判断できます。

String型の比較

Javaでは、compareToメソッドでString型の比較ができます。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

String型の場合、文字列が辞書的に前に登場するか後に登場するかを評価します。
“”a””は””b””よりも前に登場するので負の値を返すということです。
compareToIgnoreCaseメソッドを使用すれば、文字列の大小を無視して比較します。

このように、文字列が等しいか、どちらが先に辞書に登場するかを判断できます。

Date型の比較

Javaでは、compareToメソッドでDate型の比較ができます。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

このように、ミリ秒までの日付が等しいか、どちらが大きいかを判断できます。

BigDecimal型の比較

Javaでは、compareToメソッドでBigDecimal型の比較ができます。

実際のソースコードを見てみましょう。

実行結果は以下のようになります。

BigDecimalの小数点以下の精度が違う(1.0と1.00の)場合、compareToメソッドは等しいと判断しますが、equalsメソッドは不一致と判断します。
用途に応じて使い分けてください。

プリミティブ型の比較

Javaでは、プリミティブ型の比較にはcompareメソッドが使用できます。

実際のソースコードを見てみましょう。

実行結果はすべて-1になります。
このように、Javaではプリミティブ型の比較にはcompareメソッドが使用できます。

SE
Integer型やString型での比較方法など、よく理解できました。
PM
JavaのcompareToメソッドをより深く理解するために、実際にソースコードで指定してみましょう。

JavaのcompareToメソッドを正しく理解しよう

いかがでしたでしょうか。

JavaのcompareToメソッドの使用方法について説明しました。
compareToメソッドは、値や文字列の比較のために使用します。
値や文字列が等しいか、どちらが大きいかを判断できます。

ぜひご自身でJavaのソースコードを書いて、理解を深めてください。


Java分野でのキャリアアップをお考えの方は、現在募集中の求人情報をご覧ください。

求人一覧

また、直接のエントリーも受け付けております。

エントリー(応募フォーム)