【发布时间】:2014-01-28 09:52:15
【问题描述】:
如何从 List 返回多个随机元素。
这个问题How to choose a random element from an array in Scala?指的是使用:
import scala.util.Random
val A = Array("please", "help", "me")
Random.shuffle(A.toList).head
我的可变性认为我可以创建一个 for 循环并继续选择下一个随机元素(不包括已选择的元素)并将其添加到新列表中。在 Scala 中是否有更惯用/更实用的方式来实现这一点?
【问题讨论】:
-
Random.shuffle(A.toList).take(n) -
"take" 使用循环实现这一点。可能是性能原因。
-
@HappyCoder:是的,
Random.shuffle(A.toIndexedSeq).take(n)更好。
标签: scala