[英]Removing last three zeros with DecimalFormat
我正在使用jfreechart以毫秒為單位顯示軸值,但是我想以秒為單位顯示軸標簽,所以我將使用domainAxis.setNumberFormatOverride(new DecimalFormat("???"));
那么刪除最后三個零的語法是什么? 例如:1.000、2.000、3.000至1、2、3。
由於這篇文章,我成功地將1000
子類划分為NumberFormat
所以最終的代碼很簡單:
private static final NumberFormat THOUSANDS = new NumberFormat() {
@Override
public StringBuffer format(double number, StringBuffer toAppendTo, FieldPosition pos) {
new DecimalFormat().format(number / 1000D, toAppendTo, pos);
return toAppendTo;
}
@Override
public StringBuffer format(long number, StringBuffer toAppendTo, FieldPosition pos) {
return format((double) number, toAppendTo, pos);
}
@Override
public Number parse(String source, ParsePosition parsePosition) {
return null;
}
};
並致電:
domainAxis.setNumberFormatOverride(THOUSANDS);
嘗試這個
String label= "1.000"
String slabel= new DecimalFormat("0.####").format(Double.parseDouble(label));
System.out.println(slabel);
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.