long转bigdecimal
时间: 2023-11-17 19:08:30 浏览: 42
可以使用`BigDecimal`类的构造方法将`long`类型的数据转换为`BigDecimal`类型,例如:
```java
long num = 123456789L;
BigDecimal decimal = new BigDecimal(num);
```
这将创建一个`BigDecimal`对象,其值为`123456789`。注意,`BigDecimal`的构造方法可以接受`long`类型、`double`类型、`String`类型等不同类型的参数,以便进行精确的数值计算。
相关问题
long转bigdecimal前 先转成String
是的,将一个 `long` 类型的值转换为 `BigDecimal` 前,通常需要先将其转换为 `String` 类型。这是因为 `BigDecimal` 的构造函数接受一个字符串作为参数,可以精确表示较大或较小的数值。
以下是一个示例代码,展示了如何将 `long` 类型的值转换为 `BigDecimal`:
```java
long number = 1234567890L;
String numberString = String.valueOf(number);
BigDecimal decimal = new BigDecimal(numberString);
```
在这个示例中,将 `long` 类型的值 `1234567890L` 转换为字符串 `numberString`,然后使用该字符串实例化一个 `BigDecimal` 对象 `decimal`。
请注意,在转换过程中,确保 `long` 类型的值不会超出 `BigDecimal` 的范围,否则可能会导致精度丢失或溢出。
long 转成bigdecimal
这个错误是因为试图将一个 BigDecimal 类型的值强制转换为 long 类型,但是这两种类型是不兼容的。BigDecimal 类型表示一个任意精度的十进制数,而 long 类型只能表示一个有限范围内的整数。要解决这个问题,可以使用 BigDecimal 类型的方法将其转换为 long 类型,例如使用 longValue() 方法。