- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我是 java 新手,我在使用 DecimalFormat
的任务中遇到了问题
当我给出整数时,它不应该有任何小数,如果我给出十进制数,它应该打印十进制值
我使用了DecimalFormater
如下
DecimalFormat decimalFormat = (DecimalFormat) NumberFormat.getNumberInstance();
decimalFormat.setMaximumFractionDigits(2);
decimalFormat.applyPattern("0");
System.out.println(decimalFormat.format(123456789.2569));
此处打印不带小数。我将我的模式替换为decimalFormat.applyPattern("#.##");
在这种情况下,当我给出 299 时正在打印 3
但它应该打印 299怎么办?
最后,如果我给出265
,它应该是265
,如果我给出265.36
,它应该是265.36
最佳答案
如果您使用#.##
模式,您将仅获得第一个数字,其余数字将被视为小数数字。
这就解释了为什么当您输入 299
时会得到 3
,因为使用此模式 299
会被视为 2.99
> 然后舍入为 3
。
所以尝试使用这种模式:
decimalFormat.applyPattern("###.##");
有关它的更多信息,您可以查看:
关于java - 如何在java中使用DecimalFormat?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31448262/
我有这个代码: public double theInterest(){ return (accountBalance*i) +accountBalance; 我的问题是,有没
我有一个 DecimalFormat ,其模式如下 "#,###.###"但是,当我想输入例如 50.05 时,它不允许这样做,因为每次文本更改以及调用 时,我都会将字符串解析为数字 df.parse
在Java中,我试图让DecimalFormat强制指数符号上的符号。当它是积极的我需要一个加号出现。从我读到的内容来看,这似乎是理所当然的,但对我自己来说,它总是会引发错误。我知道可能还有其他方法可
我在使用 DecimalFormat 时遇到了最奇怪的事情。 我在网络应用程序中使用它。我设置了一些测试,但它在本地一直失败。我的一个 friend 运行了它,他能够成功运行 JUnit 测试。 奇怪
有人知道我在这里做错了什么吗?我有一个 float ,假设它是 0.04。格式化后变成0.03。显然输出结果已经比输入低0.01了。 这是我的代码: float creditAvailableProp
我想使用 DecimalFormat 将 float 格式化为给定的精度。我有的是这个 val formatter = DecimalFormat(if (precision > 0) "#0.${"
我正在为学校编写一个收银机程序,并添加一个“当前价格”标签。到目前为止,一切都很好。我试图使价格显示为 2 位小数,如果没有这种格式,它将显示 10 位以上小数的价格。这是我的代码: double a
我正在尝试为百万位小数的小数格式设置撇号分隔符。我收到格式错误的错误。 String text = ".000'000"; DecimalFormat dformat = new DecimalFor
目前,我在显示格式化小数时遇到问题。在我的本地计算机中,我有一个十进制值:0.002100000000 存储在数据库中。 @FacesConverter("bigDecimal4DigitsConv
我正在尝试格式化金额。但是小数值没有以正确的方式四舍五入。 public class Testing { private java.text.DecimalFormat dispAmt;
我正在使用 DecimalFormatter 读取格式化的十进制字符串值并将其转换为 float 。但是,当我运行时: DecimalFormat formatter = new Decima
我使用十进制格式在“.”之后获取 2 个数字,当区域设置为美国或法国时,它工作正常,但当区域设置为 Ar(阿拉伯语)时,它会给出此错误: java.lang.NumberFormatException
我想显示最多 6 位小数的 GPS 坐标。例如如果我的 GPS 位置类似于 x.yyyyyyyyyy,我只想显示 x.yyyyyy,为此我使用 DecimalFormat 类。但是,如果数字类似于 8
我的代码如下: DecimalFormat df = new DecimalFormat("0.##"); return Double.parseDouble(df.format(sum)); Sum
我尝试在 Android 中使用 NumberFormatter 格式化数字。我使用下面的代码,它工作得很好: NumberFormat formatter = new DecimalFormat(
我有一个以便士为单位的整数货币(例如:1234)。我需要输出为:$12.34。我们不允许在此赋值中使用 double 或 float ,只能使用整数。 这是我所拥有的: totalChange = 1
我想将所有数字四舍五入到小数点后 1 位。 例如 22.0 -6.1 我正在使用: DecimalFormat decimalFormat = new DecimalFormat("0.0"); mi
目前,我在 JTable 中显示了具有 3 位小数的 BigDecimal 值。当我得到的值为 2.500 或 1.000 时,我想要 2.5 和 1.0。这就是我尝试这个的原因:
我使用DecimalFormat类将数字格式化为字符串,反之亦然。 在我的数据库中,Java double 以特定方式表示:例如 128.88 存储为“00012888”。为了实现这一点,我使用“00
收到所有的问候。 我需要验证一个文本对应于一个数字。项目区域设置为 es_CO。我现在遇到的问题是,带有用作小数点分隔符的句点的文本被解析为整数,而这应该是一个错误,因为在上述位置,小数点分隔符是一个
我是一名优秀的程序员,十分优秀!