![](/img/trans.png)
[英]Does the Android implementation of SecureRandom produce true random numbers?
[英]Android SDK Random and SecureRandom returning not so random values
TLDR:我有一個單身人士 :
Random random = new SecureRandom(); // tried with new Random() as well
我使用相同的實例來調用random.nextInt(3) ,我得到的結果如: 2,2,2,0,2,2,2,1,2,2 。很多'2',但沒有那么多' 0'或'1'。 怎么了?
長版 :我有一個游戲,敵人隨機使用3種技能之一(通過做random.nextInt(3) ),他們總是一遍又一遍地使用相同的技能。 無論是在模擬器還是在手機上。 他們很少使用不同的技能。
當然,在測試中做1000次random.nextInt(3)調用將返回看似隨機的值,但不會在我的游戲中。 我只實例化了一次Random / SecureRandom並將其用作單例。
在非常罕見的情況下,它做相反的事情:0,1,0,0,1,2,1,1,0,1,0,1,1,0,0。我不明白發生了什么或如何修理它。
編輯:在這種情況下,您可以嘗試使用此處指定的getInstanceStrong()方法,看看是否會產生您想要的結果。 從JDK8開始, getInstanceStrong()
方法將返回平台上可用的最強SecureRandom實現。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.