我想使用printf格式化一個數字,但找不到正確的掩碼。我應該使用什麼格式來顯示2位小數或無?
例如:
class F {
public static void main(String ... args) {
p(2.123123);
p(2.0);
}
public static void p(double d) {
System.out.printf("%.2f",d);
System.out.println();
}
}
會打印:
2.12
2.00
我應該用什麼面膜,使其打印
2.12
2
或者如果可能的話:
2.12
2
?
背景:
我將用它來顯示文件大小。目前看起來是這樣的:
23/03/11 12:15 0.00 TEST/
30/03/11 10:35 2.57 kb picture-3651.jpg
12/04/11 14:49 7.31 mb reference.pdf
其中,不用說看起來很可怕,當該文件是一個目錄,它的大小爲0字節。
所以,應該是這樣的:'的printf(「%s%s%S, df.format(humanSize(file.length()),humanDesc(file.length()),file.getName())'?...我已經感覺很髒,不得不調用一個額外的函數來調整大小,描述已經,但我想沒有其他的選擇 – OscarRyz 2011-03-30 21:57:18
工作,謝謝 – OscarRyz 2011-03-30 22:02:26
容易的問題很容易 – mre 2011-03-30 22:31:27