我想随机使用Java在0到2.10的范围内生成价格。我希望价格的格式为0.00,0.10,0.20,0.30,0.40,0.50 .... 1.10,1.20一直到2.10。我的代码是这样的:Java随机生成两位十进制格式的价格
private static DecimalFormat df2 = new DecimalFormat(".##");
double min = 0;
double max = 2.10;
double diff = max - min;
double randomValue = min + Math.random() * diff;
System.out.println(df2.format(randomValue));
但是,它打印出像.06,1.0,.99,.02等值。有无论如何格式化它?
不行不行。我仍然会看到一些值,例如.03,.07等 – hyperfkcb
如果您希望所有随机值都是0.10的倍数,则生成一个随机整数并将其乘以0.10(或除以10)。查看Random类可以生成随机整数。 – ajb