[解決済み] BigDecimal で比較演算子 >, =, < を使用する方法
質問
私はunitPriceがBigDecimalデータ型として設定されたドメインクラスを持っています。現在、価格を比較するメソッドを作成しようとしていますが、BigDecimalデータ型では比較演算子を持つことができないようです。データ型を変更しなければならないのでしょうか、それとも他の方法があるのでしょうか?
どうすればいいですか?
クラスのすべてのオブジェクトは
BigDecimal
はメソッド
compareTo
を使うと、別の BigDecimal と比較できます。の結果は
compareTo
は、次に比較されます
> 0
,
== 0
または
< 0
を、必要なものに応じて選択します。ドキュメントを読めば、それがわかるでしょう。
演算子
==
,
<
,
>
のようなプリミティブなデータ型にのみ使用することができます。
int
,
long
,
double
またはそのラッパークラスである
Integer
と
Double
.
のドキュメントより
compareTo
:
これを比較すると
BigDecimal
と指定されたBigDecimal
.2つ
BigDecimal
値が等しくても尺度が異なるオブジェクト(2.0など)は と2.00のように)、このメソッドでは等しいとみなされます。このメソッドは の6つのブール型メソッドよりも優先されます。 比較演算子(<, ==, >, >=, !=, <=)です。のイディオムを提案する。 これらの比較の実行は(x.compareTo(y) <op> 0)
ここで<op>
は6つの比較演算子のうちの1つである。を返します。 このBigDecimalが数値的にvalより小さい、等しい、または大きい場合、-1、0、または1。
関連
-
[解決済み] このフォーマット(Tue Jul 13 00:00:00 CEST 2010)の日付をJavaの日付に変換する方法(文字列はalfrescoのプロパティに由来しています)
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] JavaでArrayListではなくLinkedListを使用するのはいつですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] 整数の平方根が整数であるかどうかを判断する最速の方法
-
[解決済み] 汎用型Tのクラスインスタンスを取得する方法を教えてください。
-
[解決済み] メソッドの戻り値の型を汎用的にするにはどうすればよいですか?
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
-
[解決済み】なぜJavaの+=, -=, *=, /=複合代入演算子はキャスティングを必要としないのですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] maven. -source 1.5ではラムダ式がサポートされていません。
-
[解決済み] Application startメソッドで例外が発生する。JavaFx 11
-
[解決済み] javaで部分クラスを実装する方法
-
[解決済み] JDBC タイプの方言マッピングがありません。1111
-
[解決済み] Java- <T extends Comparable<T>>の意味?
-
[解決済み] アクティビティに割り当てられない
-
[解決済み] 文字列が一意な文字であるかどうかを判定する
-
[解決済み] java.lang.ClassCastException: java.lang.Long を java.lang.Integer にキャストできない(java 1.6
-
[解決済み] 文字列の長さに応じて文字列をトリミングする
-
[解決済み] BigDecimal の equals() と compareTo() の比較