首頁 > Java > java教程 > 如何在 Java 中精確格式化浮點數,同時避免不必要的尾隨零?

如何在 Java 中精確格式化浮點數,同時避免不必要的尾隨零?

Susan Sarandon
發布: 2024-12-29 01:09:16
原創
156 人瀏覽過

How Can I Precisely Format Floating-Point Numbers in Java While Avoiding Unnecessary Trailing Zeros?

在浮點格式中保持精確度

在Java 中,經常使用String.format("%f") 來格式化浮點數導緻小值後面出現不需要的小數零。為了解決這個問題,提出了一種客製化方法來區分整數和雙精度數並對其進行適當的格式化。

所提供的解決方案利用了 64 位元雙精度數可以精確表示特定範圍內的整數這一事實。它檢查 double 值是否等於其長整型轉換。如果為 true,則使用 String.format("%d") 將值格式化為整數。否則,使用 String.format("%s") 將其格式化為具有最低必要精度的雙精度型。

透過合併此邏輯,該解決方案有效地從整數值中刪除不必要的小數零,同時保留實際精度雙打。不需要字串操作,從而防止與之相關的任何效能損失。

因此,輸出為:

232
0.18
1237875192
4.58
0
1.2345
登入後複製

請注意,由於依賴語言環境,此方法與區域設定相關字串.格式。使用此方法時,請注意基於使用者區域設定的潛在格式差異。

以上是如何在 Java 中精確格式化浮點數,同時避免不必要的尾隨零?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板