如何在0到31之間生成隨機數字,而無需在Swift語言中調用兩次數字?如何在Swift中生成沒有重複的隨機數字?
回答
您可以創建一個返回一個隨機數發生器關閉,這樣的功能:
func randomSequenceGenerator(#min: Int, #max: Int) ->() -> Int {
var numbers: [Int] = []
return {
if numbers.count == 0 {
numbers = Array(min ... max)
}
let index = Int(arc4random_uniform(UInt32(numbers.count)))
return numbers.removeAtIndex(index)
}
}
要使用它,首先調用生成器一次以創建隨機序列發生器,然後調用返回值很多次,只要你喜歡。這將打印出一到六之間的隨機值,在重新開始之前循環遍歷所有值:
let getRandom = randomSequenceGenerator(min: 1, max: 6)
for _ in 1...20 {
println(getRandom())
}
http://s17.postimg.org/pz2vbd98v/Screen_Shot_2014_10_20_at_05_26_13.png – Fahad 2014-10-20 02:30:45
http://s17.postimg.org/pz2vbd98v/Screen_Shot_2014_10_20_at_05_26_13.png 它確實重複我希望它沒有重複的數字。事實上,我有撲克牌,我希望它們在4個UIImage中同樣出現,而不會將它們全部複製到一個數組中@NateCook – Fahad 2014-10-20 02:39:41
它只是重複數字,因爲他調用的次數多於數組中的項目。請注意,他以隨機順序生成數字1-6,當他生成數字7-12時,他又以隨機順序生成數字1-6等。 – Rob 2014-10-20 02:44:15
- 1. 生成沒有重複的隨機數
- 2. 如何生成沒有重複的隨機數字javascript
- 3. 如何獲得隨機生成的數字沒有重複
- 4. 生成隨機數對,沒有重複
- 5. 隨機數生成沒有重複
- 6. 在iPhone中生成沒有重複的隨機數字?
- 7. 如何在不重複Swift的情況下生成隨機數
- 8. 在Python中 - 如何生成不重複的隨機數字
- 9. 生成沒有重複的隨機數字
- 10. 在java中生成一個隨機點數組沒有重複
- 11. 生成隨機數字而不重複
- 12. 在SWIFT中生成隨機不可重複數組
- 13. 如何避免隨機生成WP7中的重複數字?
- 14. 隨機數發生器沒有重複
- 15. 如何在Swift中生成0-5之間的隨機數字?
- 16. 沒有重複數字的隨機數字發生器
- 17. 隨機化的數字沒有重複
- 18. 在Swift 3.0中生成隨機字節
- 19. 如何生成從列隨機數字,沒有重複 - SQL服務器
- 20. 如何使用沒有重複值生成兩個隨機()
- 21. 如何在類中的函數中生成非重複的隨機數字?
- 22. 在Excel中生成隨機單詞列表,但沒有重複
- 23. 生成一個沒有重複的隨機數組
- 24. 生成一定範圍內沒有重複的隨機數
- 25. PHP - 生成沒有重複項的隨機數
- 26. 生成沒有重複的隨機數組
- 27. 使用C生成沒有重複的隨機數列表?
- 28. android:生成沒有重複的隨機數
- 29. 如何防止重複隨機生成的數字
- 30. 在bash中生成非重複的隨機數字序列
「撥打號碼」是什麼意思? – recursive 2014-10-20 02:15:18
我的意思是如果隨機數是5,它不會在方法 – Fahad 2014-10-20 02:16:43
中再次重複5看起來像http://stackoverflow.com/questions/196017/unique-non-repeating-random-numbers-in- o1 – Lance 2014-10-20 02:31:21