/* * 求一个数5.678954,小数点后6位的数,随机最后三位 */ package xuexi; //导入bigdecimal包精确计算 import java.math.BigDecimal; //导入random随机数包 import java.util.Random; public class sa5 { //确保除法运算小数点后6位 private static final int DEF_DIV_SCALE = 6; public static void main(String[] args){ //1-1000随机产生数值 Random rand = new Random(); for(int i=0; i<1000; i++) { double c=rand.nextInt(1000) + 1; int d=1000000; //计算我产生随机数除以1000000,变成小数点后六位的数字 BigDecimal b1 = BigDecimal.valueOf(c); BigDecimal b2 = BigDecimal.valueOf(d); double e= b1.divide(b2, DEF_DIV_SCALE, BigDecimal.ROUND_HALF_UP).doubleValue(); double a=e+5.67000; //输出 String b = String.format("%.6f", a); System.out.println(b); } } }