簡體   English   中英

Java DecimalFormat格式化為零

[英]Java DecimalFormat formatting zero

我正在嘗試使用以下代碼將我的(通常是大的)數字輸出格式化為帶有千位分隔符的空格:

final String PATTERN = "#,##0";
int value1 = Integer.MAX_VALUE;
int value2 = 0;
DecimalFormatSymbols dfs = new DecimalFormatSymbols();
dfs.setGroupingSeparator(' ');
DecimalFormat df = new DecimalFormat(PATTERN, dfs);
System.out.println("`" + df.format(value1) + "`");
System.out.println("`" + df.format(value2) + "`");

但是,這讓我很困惑,輸出是:

`2 147 483 647`
``

請問什么是實現我想要的結果的正確模式:

`2 147 483 647`
`0`

因為好人已經在評論中做出了回應,所以這種模式是正確的,並且可以產生預期的結果。

問題部分僅一步之遙。 假設代碼在問題中,那么如果df.format(getNumber()); #getValue()失敗,則永遠不會執行#format() ,這(在我的代碼中)最終導致用戶界面中的字符串為空,並且引起混亂。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM