Java 在-x和x之间生成随机双精度

Java 在-x和x之间生成随机双精度,java,random,double,range,Java,Random,Double,Range,可能重复: 可能的产出: -0.23 0.01 0.26 -0.4 如何在(示例)-0.5和0.5之间生成一个双精度值?这应该可以做到 Math.random() - 0.5 Math.random将在0和1之间生成。如果希望介于-0.5和+0.5之间,则可以从该结果中选择-0.5。见 有一件事是它永远不会给你0.5,因为Math.random()永远不会返回1。post将为您提供更多详细信息和可能的解决方案。这样就可以了 Math.random() - 0.5 return min +

可能重复:

可能的产出:

-0.23
0.01
0.26
-0.4
如何在(示例)
-0.5
0.5
之间生成一个双精度值?

这应该可以做到

Math.random() - 0.5
Math.random
将在
0
1
之间生成。如果希望介于
-0.5
+0.5
之间,则可以从该结果中选择
-0.5
。见

有一件事是它永远不会给你
0.5
,因为
Math.random()
永远不会返回
1
。post将为您提供更多详细信息和可能的解决方案。

这样就可以了

Math.random() - 0.5
return min + Math.random() * (max - min);
Math.random
将在
0
1
之间生成。如果希望介于
-0.5
+0.5
之间,则可以从该结果中选择
-0.5
。见


有一件事是它永远不会给你
0.5
,因为
Math.random()
永远不会返回
1
。帖子将为您提供更多细节和可能的解决方案。

谢谢大家,但这是我所需要的最简单的一个:)@Baz好的,谢谢您的解释。所以它不能返回0.5或-0.5。不管怎样,对我来说没什么大不了的。谢谢@用户1621988您应该感谢RNJ,因为他发布了这个答案。确切地说:它可以产生
-0.5
,但不能产生
0.5
。谢谢大家,但这是我需要的最简单的一个:)@Baz好的,谢谢你的解释。所以它不能返回0.5或-0.5。不管怎样,对我来说没什么大不了的。谢谢@用户1621988您应该感谢RNJ,因为他发布了这个答案。确切地说:它可以导致
-0.5
,但不能导致
0.5
return min + Math.random() * (max - min);