[英]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.