- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
@Test
void a() {
NumberFormat format = DecimalFormat.getInstance(Locale.CHINA);
format.setMaximumFractionDigits(2);
format.setMinimumFractionDigits(2);
format.setCurrency(Currency.getInstance(Locale.CHINA));
for (RoundingMode mode : RoundingMode.values()) {
if(mode == RoundingMode.UNNECESSARY) continue;
format.setRoundingMode(mode);
System.out.println("Rounding mode: " + mode);
System.out.println("--------------------------------------------------------");
System.out.println("\t format 1.014 is " + format.format(1.014));
System.out.println("\t format 1.015 is " + format.format(1.015));
System.out.println("\t format 1.016 is " + format.format(1.016));
System.out.println();
}
}
format 1.014 is 1.02
format 1.015 is 1.02
format 1.016 is 1.02
format 1.014 is 1.01
format 1.015 is 1.01
format 1.016 is 1.01
format 1.014 is 1.02
format 1.015 is 1.02
format 1.016 is 1.02
format 1.014 is 1.01
format 1.015 is 1.01
format 1.016 is 1.01
format 1.014 is 1.01
format 1.015 is 1.01
format 1.016 is 1.02
format 1.014 is 1.01
format 1.015 is 1.01
format 1.016 is 1.02
format 1.014 is 1.01
format 1.015 is 1.01
format 1.016 is 1.02
进程结束,退出代码为 0
最佳答案
那是因为 1.015 实际上是1.0149999999999999023003738329862244427204132080078125
使用 BigDecimal 的解决方案适用于字符串
BigDecimal db = new BigDecimal("1.015");
db = db.setScale(2, BigDecimal.ROUND_HALF_UP);`
关于Java NumberFormat四舍五入模式,为什么半上格式1.015转1.01不转1.02,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58635970/
以下有什么区别 NumberFormat nf = NumberFormat.getInstance(); 和 NumberFormat nf = new NumberFormat() 为什么我们需要
我在使用 Java 格式化货币时遇到问题。我正在尝试格式化要打印为货币的数字,所有小数点都对齐: £ 1.23 £ 12.34 £123.45 调用 NumberFormat.getCurrency
我有以下 vba 代码,但我想将其粘贴为 dd-mm-yyyy 格式。 Worksheets("stack").Range("M" & LastRowM + 1 & ":" & Cells(LastR
NumberFormat是否可以显示: 如果 double 值为15.00则为'15' 如果 double 值为15.50则为'15 .50' 谢谢你的帮助。 最佳答案 实际上,我认为使用 trunc
我在我的应用程序中发现了一个错误,当我使用国际格式时,我的货币字符串没有显示正确的分组和小数点分隔符。我提取了代码以尝试隔离和演示问题。在下面的代码中,我创建了一个美国格式器和一个世界格式器。它们都使
为了使NumberFormat操作具有线程安全性,我使用了ThreadLocal,如下所示: public class ThreadSafeNumberFormatter { private
例如: NumberFormat nf = NumberFormat.newInstace(); Number number = nf.parse("0.0"); number 在运行时被解析为 ja
是否可以使用 Excel 或 VBA 在单元格/列中设置数字格式,以便: 如果我输入一个公式(任何以 = 开头的内容),Excel 将计算公式(而不是将其解释为文本) 如果我输入一个值,例如 5.80
我正在尝试将字符串值格式化为有效的货币 double ,如下所示 NumberFormat currency=NumberFormat.getCurrencyInstance(); currency.
我想格式化一个没有任何前缀(或相同前缀)的正数和负数的数字。 NumberFormat 规范规定您可以为正数指定一个子模式,为负数指定一个子模式,并用分号分隔。 Each subpattern has
尝试在 JSP 中显示货币符号,但我没有看到它。我做了研究,但我只是不知道我还应该添加什么才能让它发挥作用。这就是我所拥有的。 Controller @NumberFormat(style = St
我正在尝试将以下字符串解析为字节。但是它给了我 NumberFormat 异常。有人可以告诉我解决方案是什么吗? Byte.parseByte("111111111111111111111111100
我正在尝试用 Java 制作一份快速报告,但在格式化数字时遇到问题。这是我现在拥有的: MessageFormat lineFormat = new MessageFormat("{0}\t{1,nu
这个问题已经有答案了: How to format decimals in a currency format? (22 个回答) 已关闭 7 年前。 我像这样使用 Java NumberFormat
我有以下类(class): import java.text.NumberFormat; public static class NF { public static NumberFormat
我有一个由用户输入的金额,我想验证它。我已经编写了一个 JSF validator ,但在所有情况下都无法让它正常工作。这是我的场景: 我有不同区域设置的用户,因此我需要处理各种输入方法,并希望允许以
我正在尝试检查用户是否以有效格式输入了数字。但似乎无效的字符串也被成功解析。一个例子: final String value1 = "12,85", value2 = "128,598.77"; Nu
有没有办法创建一个没有最大小数位数的 NumberFormat 实例?一个明显的解决方案是 NumberFormat format = NumberFormat.getNumberInstance()
代码: let currency = 400023; console.log(new Intl.NumberFormat('de-DE', { style: 'currency', curre
我无法更改现有 Excel 文档 (xlsx) 中的列格式。列内容实际上是数字,但显示为文本,因此出现绿色三角形告诉单元格显示为文本。 所以我在 C# 应用程序中打开此文档并执行以下操作: sheet
我是一名优秀的程序员,十分优秀!