为了账号安全,请及时绑定邮箱和手机立即绑定

从数组中选择一个随机元素

从数组中选择一个随机元素

从数组中选择一个随机元素假设我有一个数组,我想随机选择一个元素。最简单的方法是什么?显而易见的方式是array[random index]。但也许有类似红宝石的东西array.sample?或者如果没有,可以使用扩展程序创建这样的方法?
查看完整描述

3 回答

?
慕田峪4524236

TA贡献1875条经验 获得超5个赞

Swift 4.2及以上版本

新推荐的方法是Collection协议的内置方法:randomElement()。它返回一个可选项以避免我之前假设的空案例。

let array = ["Frodo", "Sam", "Wise", "Gamgee"]print(array.randomElement()!) // Using ! knowing I have array.count > 0

如果您不创建数组并且不保证计数> 0,您应该执行以下操作:

if let randomElement = array.randomElement() { 
    print(randomElement)}

Swift 4.1及以下版本

只是回答你的问题,你可以这样做以实现随机数组选择:

let array = ["Frodo", "sam", "wise", "gamgee"]let randomIndex = Int(arc4random_uniform(UInt32(array.count)))print(array[randomIndex])

铸件是丑陋的,但我相信它们是必需的,除非别人有另一种方式。


查看完整回答
反对 回复 2019-08-12
  • 3 回答
  • 0 关注
  • 799 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信