我想隨機使用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