数値に含まれる小数点以下の桁数に応じてコードを実行する方法はありますか?たとえば、doubleが2.0の場合は整数に変換したいが、2.43426の場合はdoubleとして残しておきたい。ありがとう!If Else(小数点以下桁数)の条件
1
A
答えて
6
0
あなたは精度を指定し、次のように変換することができます:
double precision = 1e-10;
int rounded = Math.round(x);
if (Math.abs(x-rounded) > precision) System.out.print(x)
else System.out.print(rounded);
0
- 、正規表現を使用して文字列
- に二重の変換小数点を検索し、その後の文字数を取得します。
- 迅速かつ汚いソリューションは以下になり、あなたのif-else
0
でそれを使用します。
double foo = 2.43426;
int count = String.valueOf(foo).split(".")[1].toCharArray().length;
if(count > 1){
// do stuff
}
0
これはあなたが後にしているものである場合:
私はそれらを文字列に変換して書き出すので、3.0の代わりに3を、3.4324の代わりに3を指定したいと思うでしょう。
次に「正しい」方法はDecimalFormat
を使用している:
DecimalFormat fmt = new DecimalFormat("0.#");
fmt.setMaximumFractionDigits(Integer.MAX_VALUE);
assert "3".equals(fmt.format(3.0));
assert "3.4324".equals(fmt.format(3.4324));
ただし、小数点区切りを(私はコンマではなく、ドットを得る)ローカライズありません。それが問題の場合は、fmt.setDecimalFormatSymbols(new DecimalFormatSymbols(Locale.ROOT))
に電話するだけです。
関連する問題
- 1. 小数点以下2桁の小数点以下2桁の小数点以下の桁数
- 2. 小数点以下の桁数
- 3. 小数点以下の桁数
- 4. bigdecimalと小数点以下の桁数
- 5. 小数点以下を小数点以下の桁数に変換します。
- 6. 小数点以下の桁落ちグリッチ
- 7. 小数点以下の桁のリスト
- 8. 小数点以下2桁の小数点以下を切り捨てます
- 9. 小数点/貨幣フィールドの小数点以下2桁
- 10. LISP - 小数点以下の桁
- 11. SQLの小数点以下桁
- 12. Xcode 4.2小数点以下の桁
- 13. 小数点以下の桁QTableViewデリゲート
- 14. 年次給与&小数点以下2桁の小数点以下の桁数を返します。
- 15. 小数点以下2桁の浮動小数点数と小数点以下6桁の同じ浮動小数点数を比較する
- 16. エキスは、小数点以下2桁
- 17. Highchartsヒートマップスケール小数点以下1桁
- 18. 二重小数点以下6桁
- 19. 2桁の小数点以下の桁数jquery
- 20. 小数点以下の桁数と固定桁の書式
- 21. if(複数の条件)... else
- 22. VB.NETの数値の小数点以下の桁数
- 23. 浮動小数点数を小数点以下の桁数に拡張する
- 24. 丸めダブル - 最小小数点以下の桁数
- 25. 小数点以下1桁以上の数字を印刷
- 26. 小数点以下の桁数を表す数値フォーマッタ
- 27. javascript関数if、else条件
- 28. MS Accessテーブルの小数点以下桁数を小数点に変換する
- 29. MVC TextBoxForの小数点以下の桁数が小数点以下で拡大されます
- 30. キープレスイベントの小数点以下の桁数確認
これはどのように役立つでしょうか? (Javaが静的型の言語であることを念頭に置いて) –
私はそれらを文字列に変換して書き出すので、3.0ではなく3で、3.4324ではなく3であると言いたいと思います。私はこれを完全に間違ったやり方にしているかもしれません。 – Wilson
これは単なる出力目的のための書式設定の問題ですか? –