问题标签 [bigdecimal]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - 将 BigDecimal 转换为 Integer
我有 Hibernate 方法,它返回一个 BigDecimal。我有另一个 API 方法,我需要将该数字传递给它,但它接受 Integer 作为参数。我无法更改这两种方法的返回类型或变量类型。
现在如何将 BigDecimal 转换为 Integer 并将其传递给第二种方法?
有没有办法解决这个问题?
java - Java BigDecimal:四舍五入到最接近的整数值
我需要以下结果
.round()
还是.setScale()
?我该怎么做?
java - 比较 BigDecimal 是否大于零
BigDecimal
如果值大于零,我该如何比较?
java - Number 或 BigInteger 和 BigDecimal 中的错误(或者在这些 API 文档中)?
根据Number.longValue()
方法的规范应...
以 long 形式返回指定数字的值。这可能涉及舍入或截断。
但是,BigInteger
(and BigDecimal
) 会覆盖此方法并返回它所代表的数字的整数部分的低 64 位。从BigInteger
例如的文档:
[...]如果这个 BigInteger 太大而无法放入 long 中,则只返回低 64 位。[...]
我声称“这可能涉及舍入或截断。 ”没有说明该方法实际应该返回什么,或者在实现或文档中存在错误。
你会同意,还是我的推理有误?
示例代码:
输出:
java - 大十进制解析问题
我在大十进制没有问题。以下代码片段将解释我的问题:
这里的输入是一个字符串类型。现在假设输入的值为135abc24在这种情况下 parsedValue 的值为135但我想检查此类输入并给出错误而不是截断字符串和其余部分。只想添加输入字符串也可能包含指数编号,所以我什至不能只检查数字字符串。如果您想了解更多信息或问题不清楚,请告诉我,
提前致谢。
java - ByteBuffer 到 bigdecimal、二进制、字符串
**请检查这篇文章底部的编辑
我有一个字节缓冲区 [128 位] [有数字],我需要将其转换为大十进制、二进制、字符串,因为这些是使用 jdbc 时对应的 sql 映射。
是否有我可以使用的库 API 来执行此操作。我看到 String.valueof() 没有将字节数组作为参数。所以我坚持做这样的事情:
这对我来说就像一个黑客?有没有更好的方法来做到这一点,或者以一种有效的方式来做 jdbc 部分。到目前为止,我专注于在各自的 sql 列中进行插入。
编辑:
我错了,字节缓冲区不仅仅是数字,而是各种位。所以现在我需要获取 128 位字节缓冲区并将其转换为 2 个 long,然后合并为一个 bigdecimal,以便数字保持其健全性。所以像这样: LongBuffer lbUUID = guid.asLongBuffer();
谢谢。
java - 如何指定要打印的 BigDecimal 的小数位数?
我使用BigDecimal
如下:
val
包含 12.2300。我想在我的页面上显示 12.23。我怎样才能做到这一点?
java - ArithmeticException:“非终止十进制扩展;没有精确可表示的十进制结果”
为什么以下代码会引发如下所示的异常?
例外:
java - 应该使用哪种 PostgreSQL 列类型来存储 Java BigDecimal?
我应该使用什么 PostgreSQL 列类型来存储 Java BigDecimal?
java - BigDecimal 类中的 Java 运行时错误“非终止十进制扩展;没有精确可表示的十进制结果”
选择“正不正确集成”或“负不正确集成”时出现错误,错误是线程“主”java.lang.ArithmeticException:非终止十进制扩展中的异常;没有精确可表示的十进制结果。
代码: