我正在使用以下 DecimalFormat
模式:
// Use ThreadLocal to ensure thread safety.
private static final ThreadLocal <NumberFormat> numberFormat =
new ThreadLocal <NumberFormat>() {
@Override protected NumberFormat initialValue() {
return new DecimalFormat("#,##0.00");
}
};
这会执行以下转换:
1 -> 1.00
1.1 -> 1.10
1.12 -> 1.12
我现在有一个额外的要求。
1.123 -> 1.123
1.1234 -> 1.123
这意味着当
- 小数点后两位不足,我会“补”到小数点后两位。
- 正好有二三位小数,我什么都不做。
- 小数点后三位以上,我会截断到小数点后三位。
我可以使用 DecimalFormat
类指定此行为吗?
最佳答案
DecimalFormat("#,##0.00#")
关于java - 如何根据输入长度更改 DecimalFormat 行为?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4429163/