double小数点工具类

来源:互联网 发布:linux cat 生成文件 编辑:程序博客网 时间:2024/06/06 16:58

处理double类型小数点的类,可以自定义小数点的位数,向上取整, 向下取整,四舍五入

import java.math.BigDecimal;/** * 数字转换器 * 处理double类型小数点位数 * @author dhh * */public class DoubleConverter {/** * double保留小数点位数,往上取整 * 比如处理【评分】等数据 * @param d 要处理的double值 * @param n 要保留的位数 * @return */public static double getCeilNum(double d , int n){BigDecimal b = new BigDecimal(String.valueOf(d));b = b.divide(BigDecimal.ONE , n , BigDecimal.ROUND_CEILING);return b.doubleValue();}/** * double保留小数点位数,往下取整 * 比如处理【价格】等数据 * @param d 要处理的double值 * @param n 要保留的位数 * @return */public static double getFloorNum(double d , int n){BigDecimal b = new BigDecimal(String.valueOf(d));b = b.divide(BigDecimal.ONE , n , BigDecimal.ROUND_FLOOR);return b.doubleValue();}/** * double保留小数点位数,四舍五入 * 比如处理价格等数据 * @param d 要处理的double值 * @param n 要保留的位数 * @return */public static double getRoundingNum(double d , int n){BigDecimal b = new BigDecimal(String.valueOf(d));b = b.divide(BigDecimal.ONE , n , BigDecimal.ROUND_HALF_UP);return b.doubleValue();}//public static void main(String[] args) {//double pi = 3.1343432432d;////double result = getCeilNum(pi,2);////double result2 = getFloorNum(pi,2);////double result3 = getRoundingNum(pi,2);////System.out.println("我打印的Ceiling结果:" + result + "我打印的Floor结果:" + result2+ "我打印的Rounding结果:" + result3);//}}


0 0
原创粉丝点击