Swift随机数
发布时间:2020-12-14 05:29:07 所属栏目:百科 来源:网络整理
导读:参见英文答案 Crash when casting the result of arc4random() to Int7个 我有这个drawRandomCard函数的问题. 它的工作方式就像它应该使用一段时间,但最终它崩溃了应用程序. 这是代码: import Foundationvar cardDeck = ArrayPlayingCard()class Deck { fun
参见英文答案 >
Crash when casting the result of arc4random() to Int7个
我有这个drawRandomCard函数的问题. 它的工作方式就像它应该使用一段时间,但最终它崩溃了应用程序. 这是代码: import Foundation var cardDeck = Array<PlayingCard>() class Deck { func addCard(card : PlayingCard,atTop : Bool = false){ if atTop { cardDeck.insert(card,atIndex: 0); }else{ cardDeck += card } } func drawRandomCard() -> PlayingCard{ var card = PlayingCard() var randomNumber : Int = Int(arc4random()) % (cardDeck.count - 1) card = cardDeck[randomNumber] cardDeck.removeAtIndex(randomNumber) return card } }
使用arc4random_uniform避免模偏差.如下:
let randomNumber = arc4random_uniform(150) 对于您的示例,它将是: let randomNumber = Int(arc4random_uniform(UInt32(cardDeck.count))) (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |