2

我正在尝试以 #.# 的格式向我返回一个随机双精度值,但是我得到的值是这样的:0.9395772067578356

由于我无法将参数放在 .nextDouble 中,您如何强制随机返回小数点后一位。

        myRandomNumGenerator = new Random();
        loadedValue = myRandomNumGenerator.nextDouble();
4

2 回答 2

7
DecimalFormat oneDigit = new DecimalFormat("#,##0.0");//format to 1 decimal place

System.out.println(oneDigit.format(anyVariable)); //generic usage

loadedValue = Double.valueOf(oneDigit.format(loadedValue));//specific usage posted in comments
于 2013-03-04T02:45:14.307 回答
2

我不认为你可以强迫一个地方返回。但是,您可以将其打印在一个地方。

System.out.printf("%.1f", loadedValue);

这会将值打印到一个地方。

于 2013-03-04T02:46:01.887 回答