加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

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)))

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读