我想从数组中选择一个随机元素,将其从数组中删除,然后返回该元素。
我可以使用sample
获取元素index
来查找它,然后delete_at
删除它,但是有更好的方法吗?
答案 0 :(得分:15)
最美丽的解决方案:
array.delete(array.sample)
答案 1 :(得分:14)
array.delete_at(rand(array.length))
这似乎是对的,我猜它效果最好。
编辑:同样的答案在这里:Is there a particular function to retrieve then delete random array element?所以我会这样做:D