こんにちは。たいら(@tairaengineer2)です。
転職を繰り返し現在4社経験している、12年目エンジニアです。
この記事では、 Javaで2つのBigDecimal型の値の比較ができるBigDecimal.compareToメソッドについて
- BigDecimal.compareToメソッドとは
- BigDecimal.compareToメソッドを使ったサンプルプログラム
と、丁寧に解説していきます。
前提条件:実行環境について
実行環境は以下の通りです。
OS | Windows10 |
---|---|
IntelliJ IDEAのエディション | Community(無料版) |
IntelliJ IDEAのバージョン | 2021.3.2 |
プロジェクト | Javaプロジェクト |
SDK | Oracle OpenJDK version17.0.2 |
Javaを動かすためにIntelliJ IDEAを使っています。
IntelliJ IDEAのインストールは、下の記事をご参考ください。
BigDecimal.compareToメソッドとは
BigDecimal.compareToメソッドとは、呼び出しているBigDecimal型の値と引数で指定したBigDecimal型の値を比較して結果をint型で返すメソッドです。
BigDecimal.compareToメソッドを使うためには、
1 |
import java.math.BigDecimal; |
をインポートする必要があります。
使い方サンプルは以下になります。
1 |
int result = 【BigDecimal型値1】.compareTo(【BigDecimal型値2】); |
比較した結果の返り値をまとめました。
ケース | 返り値 |
---|---|
【呼び出した値】 == 【引数】 の場合 | 0 |
【呼び出した値】 > 【引数】 の場合 | 1 |
【呼び出した値】 < 【引数】 の場合 | -1 |
たとえば
1 2 3 |
BigDecimal sample1 = BigDecimal.valueOf(10); BigDecimal sample2 = BigDecimal.valueOf(14); int result = sample1.compareTo(sample2); |
だと、呼び出した値より引数の方が大きいので変数resultには
1 |
-1 |
が返されます。
では、次の章で実際に使ってみます。
BigDecimal.compareToメソッドを解説するプログラムの概要
BigDecimal.compareToメソッドを解説するプログラムでは、
- 【呼び出した値】 == 【引数】の場合
- 【呼び出した値】 > 【引数】の場合
- 【呼び出した値】 < 【引数】の場合
の3パターンでBigDecimal.compareToメソッドに引数を与えて結果を表示し確認します。
解説で使うJavaプログラムは、Sampleプロジェクトのsampleパッケージ内にある、とします。
Javaサンプルプログラム
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
package sample; import java.math.BigDecimal; public class Sample { public static void main(String[] args) { System.out.println("■BigDecimal.compareToメソッドサンプル"); System.out.println("・【呼び出した値】 == 【引数】の場合"); BigDecimal num1 = BigDecimal.valueOf(4); BigDecimal num2 = BigDecimal.valueOf(4); int result1 = num1.compareTo(num2); System.out.println("返り値:" + result1); System.out.println("・【呼び出した値】 > 【引数】の場合"); BigDecimal num3 = BigDecimal.valueOf(5.4); BigDecimal num4 = BigDecimal.valueOf(3.1); int result2 = num3.compareTo(num4); System.out.println("返り値:" + result2); System.out.println("・【呼び出した値】 < 【引数】の場合"); BigDecimal num5 = BigDecimal.valueOf(5.7); BigDecimal num6 = BigDecimal.valueOf(9.9); int result3 = num5.compareTo(num6); System.out.println("返り値:" + result3); } } |
BigDecimal.valueOfメソッドはdouble型やlong型をBigDecimal型に変換できるメソッドです。
詳しくはこちらの記事をご参考ください。
実行結果
Javaプログラムを実行します。
実行のやり方は
- プログラムを右クリックして実行
- 実行タブから実行
- ガターから実行
の3種類あるので、いずれかで実行します。
詳しい解説は以下の記事をご参考ください。
1 2 3 4 5 6 7 |
■BigDecimal.compareToメソッドサンプル ・【呼び出した値】 == 【引数】の場合 返り値:0 ・【呼び出した値】 > 【引数】の場合 返り値:1 ・【呼び出した値】 < 【引数】の場合 返り値:-1 |
2つの値の比較ができていることが確認できました。
まとめ:BigDecimal.compareToメソッドを使ってみよう!
以上がJavaのBigDecimal.compareToメソッドについての解説でした!
あなたのご参考になったのなら、とても嬉しいです(*´▽`*)
ではでは~(・ω・)ノシ
コメント