Java对 Double 类型的数据进行四舍五入
2018-07-20 来源:open-open
/** * 对 Double 类型的数据进行四舍五入 * @author gaoqing * 2014-12-2 * @param initValue 初始值 * @param scaleNum 保留小数点的位数 * @param tClass 保留小数点位数后,返回的数据类型的 Class * @return t 四舍五入后的值 */ public static <T> T roundDouleValue(Double initValue, int scaleNum, Class<T> tClass){ T t = null; String className = tClass.getName().toLowerCase(); if (initValue == null) { //返回类型为:整数 if (className.contains("int")) { t = (T) Integer.valueOf(0); //返回类型为:浮点数 }else if (className.contains("dou")) { t = (T) Double.valueOf(0.0); } }else { BigDecimal bigDecimal = new BigDecimal(initValue); BigDecimal scaledBigDecimal = bigDecimal.setScale(scaleNum, BigDecimal.ROUND_HALF_UP); //返回类型为:整数 if (className.contains("int")) { Integer tempInteger = new Integer(scaledBigDecimal.intValue()); t = (T)tempInteger ; //返回类型为:浮点数 }else if (className.contains("dou")) { Double tempDouble = new Double(scaledBigDecimal.doubleValue()); t = (T) tempDouble; } } return t; }
标签:
版权申明:本站文章部分自网络,如有侵权,请联系:west999com@outlook.com
特别注意:本站所有转载文章言论不代表本站观点!
本站所提供的图片等素材,版权归原作者所有,如需使用,请与原作者联系。
最新资讯
热门推荐