如何使用Swift生成(10…20)范围内的随机数

我可以为游戏中的物品选择一个随机数,但是可以选择两个数字之间的随机数吗?


所以代替


let number = (arc4random_uniform(100))

我想要这样的东西:


let number = (arc4random_uniform(10...20))

或类似的东西?现在,如果我得到了放下武器的信息,那么它可能就是清单中的所有内容。这样我就可以做到,这样只有前几个会掉落特定怪物,或者在更高等级时他们会掉落更好的武器,而不是低等级。


慕田峪7331174
浏览 1907回答 2
2回答

猛跑小猪

Xcode 11•Swift 5.1或更高版本extension Range where Bound: FixedWidthInteger {&nbsp; &nbsp; var random: Bound { .random(in: self) }&nbsp; &nbsp; func random(_ n: Int) -> [Bound] { (0..<n).map { _ in random } }}extension ClosedRange where Bound: FixedWidthInteger&nbsp; {&nbsp; &nbsp; var random: Bound { .random(in: self) }&nbsp; &nbsp; func random(_ n: Int) -> [Bound] { (0..<n).map { _ in random }&nbsp; &nbsp; }}注意:对于较早的Swift版本,请检查编辑历史记录用法:(10...20).random&nbsp; &nbsp; // 16(0...1).random(10)&nbsp; // [0, 1, 0, 0, 1, 1, 1, 1, 1, 0]
打开App,查看更多内容
随时随地看视频慕课网APP