Object 转换为 BigDecimal

简介: 项目中遇到读取Excel文件里面的数据转为金额的情况,为了程序更加的健壮,进行处理如下:import java.math.BigDecimal; import java.math.BigInteger; public class MathUtils { ...

项目中遇到读取Excel文件里面的数据转为金额的情况,为了程序更加的健壮,进行处理如下:

import java.math.BigDecimal;  
import java.math.BigInteger;  
  

public class MathUtils {  
      
    public static BigDecimal getBigDecimal( Object value ) {  
        BigDecimal ret = null;  
        if( value != null ) {  
            if( value instanceof BigDecimal ) {  
                ret = (BigDecimal) value;  
            } else if( value instanceof String ) {  
                ret = new BigDecimal( (String) value );  
            } else if( value instanceof BigInteger ) {  
                ret = new BigDecimal( (BigInteger) value );  
            } else if( value instanceof Number ) {  
                ret = new BigDecimal( ((Number)value).doubleValue() );  
            } else {  
                throw new ClassCastException("Not possible to coerce ["+value+"] from class "+value.getClass()+" into a BigDecimal.");  
            }  
        }  
        return ret;  
    }  
  
  
  
}  

 

相关文章
|
6月前
|
Java
【Java】如果一个集合中类型是String如何使用拉姆达表达式 进行Bigdecimal类型计算?
【Java】如果一个集合中类型是String如何使用拉姆达表达式 进行Bigdecimal类型计算?
119 0
|
Java API
BigDecimal类型讲解
如何在Java中使用BigDecimal数字类型,你真的掌握了嘛??
121 0
|
6月前
|
缓存
Integer对象范围(-128-127)之间(Integer. valueOf()方法)
Integer对象范围(-128-127)之间(Integer. valueOf()方法)
|
5月前
包装类(Integer举例)
包装类(Integer举例)
TS,数据类型概述,常见的基本数据类型有number/string/boolean/undefined/null,字符串用““,let food: string = ‘糖葫芦‘,布尔类型
TS,数据类型概述,常见的基本数据类型有number/string/boolean/undefined/null,字符串用““,let food: string = ‘糖葫芦‘,布尔类型
|
6月前
|
Java 数据库
Java中BigDecimal比较大小的方法BigDecimal转换为Integer
Java中BigDecimal比较大小的方法BigDecimal转换为Integer
95 0
|
6月前
BigDecimal转String
BigDecimal转String
44 0
|
6月前
BigDecimal常用示例
BigDecimal常用示例
63 1
|
JSON 数据格式
Gson转换json数据为HashMap时long类型变为double问题解决
今天再使用Gson处理json数据的时候碰到了一个问题 , 当我使用如下代码解析json数据的时候 , requestTime就变为了double类型
303 0
|
人工智能 Java 数据库
BigDecimal 转 String
BigDecimal 转 String
154 0