java精确除运算,保留任意位小数

来源:互联网 发布:淘宝怎么打假手机 编辑:程序博客网 时间:2024/04/30 19:16
import java.math.BigDecimal;import java.text.NumberFormat;/** * java精确除法运算,可保留任意长的小数位,多位小数,不限小数位长度 */public class Demo { public static void main(String[] args) {  // 除数  BigDecimal bd = new BigDecimal(153);  // 被除数  BigDecimal bd2 = new BigDecimal(7);  // 进行除法运算,保留200位小数,末位使用四舍五入方式,返回结果  BigDecimal result = bd.divide(bd2, 200, BigDecimal.ROUND_HALF_DOWN);  System.out.println("完整200位小数结果: " + result);  System.out.println("float           : " + result.floatValue());  System.out.println("double          : " + result.doubleValue());  // 指定想要的小数位长度取值  NumberFormat nf = NumberFormat.getNumberInstance();  nf.setMaximumFractionDigits(20);// 最大小数位  nf.setMinimumFractionDigits(5); // 最小小数位  String str = nf.format(result);  System.out.println("指定位数取值: " + str); }}

原创粉丝点击