爲隨機(http://www.scala-lang.org/api/current/scala/util/Random.html)的Scaladoc頁指定nextDouble「返回下一個僞,從該隨機數生成器的序列均勻分佈的0.0和1.0之間的雙值」。Scala中的Random.nextDouble的範圍是什麼?
很明顯,它留下了「包容」。例如,值0.0和1.0是否可能?如果是這樣,哪一個(或兩個)?例如,如果我除以這個數字,我真的想確保0不是一個返回值。在其他情況下,我可能不需要1.0。很明顯,這很難通過測試得到,因爲在0.0和1.0之間的值大約在0.038以上。
這是什麼?請注意,因爲不是每個人都能記得哪個「(」和「[」意思是「包含」,請只說「包含X」。
附註:1.0是唯一的,但是由於浮點數的內部表示,當你對它進行一些算術運算時,可能會發生1.0附近的值表示爲1.0 ...(這裏有一個Java拼圖,但是我現在找不到)。 – sschaef