Doubleを小数点以下1桁に丸める kotlin: 0.044999から0.1まで
2023-08-19 23:21:31
質問
Double変数があります。
0.0449999
で、これを小数点以下1桁に丸めたいのですが
0.1
.
私はKotlinを使用していますが、Javaの解決策も参考になります。
val number:Double = 0.0449999
この2つの解法で小数点以下1桁を取得してみました。
-
val solution = Math.round(number * 10.0) / 10.0
-
val solution = String.format("%.1f", number)
問題なのは、両方のケースで 0.0 が得られることです。
0.04
から
0.0
. 小数点以下を全て取って丸めるわけではありません。
0.1を求めたいのですが。
0.045 -> 0.05 -> 0.1
どのように解決するのですか?
最後に、私は何をしましたか
Andy Turner
が提案したように、小数点以下 3 桁に丸め、次に 2 桁、そして 1 桁に丸めました。
回答 1:
val number:Double = 0.0449999
val number3digits:Double = String.format("%.3f", number).toDouble()
val number2digits:Double = String.format("%.2f", number3digits).toDouble()
val solution:Double = String.format("%.1f", number2digits).toDouble()
回答2
val number:Double = 0.0449999
val number3digits:Double = Math.round(number * 1000.0) / 1000.0
val number2digits:Double = Math.round(number3digits * 100.0) / 100.0
val solution:Double = Math.round(number2digits * 10.0) / 10.0
結果 :
<ブロッククオート0.045 → 0.05 → 0.1
注意: 本来あるべき姿ではないことは分かっていますが、特殊なケースですべての小数を考慮して切り上げる必要がある場合もあるので、もしかしたら誰かがこれを役に立つと思うかもしれません。
関連
-
Git Pull Failed マージされていないファイルがあるため、Pull できません。
-
Java Notes 005_この行に複数のマーカーがある - キーを変数に解決できない - シンタックスエラー、ins
-
List list = new ArrayList(); Error: ArrayList は型に解決できません。
-
Java appears タイプEを囲むインスタンスがアクセスできない。
-
Spring Bootは、Tomcatの組み込みのmaxPostSizeの値を設定します。
-
1分でわかる!恋人の写真をIDEAの背景画像に設定する方法【おすすめ集
-
ApiModel と @ApiModelProperty の使用法
-
[解決済み] Javaで数値を小数点以下n桁に丸める方法
-
[解決済み] Javascriptで小数点以下1桁に丸めるにはどうしたらいいですか?
-
[解決済み】C#でdoubleを小数点以下2桁で丸める?
最新
-
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 実装 サイバーパンク風ボタン
おすすめ
-
Collections.sortがdoubleでソートできない問題を完璧に解決する。
-
Uncaught ReferenceError: は定義されていません。
-
無効なメソッド宣言
-
Java Notes 005_この行に複数のマーカーがある - キーを変数に解決できない - シンタックスエラー、ins
-
-bash: java: コマンドが見つからない 解決方法
-
セミコロン期待値エラー解決
-
XXX型を囲むインスタンスがJavaでアクセスできない
-
Server Tomcat v9.0 Server at localhost の起動に失敗しました。
-
春ブート複数のデータソースの管理(atomikos)同じサーバーホスト上の複数のプロジェクトを開始する複数のJava - jarのエラーソリューション
-
アクセス制限の解決方法: ---- in Java