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

如何从List scala返回多个随机元素

发布时间:2020-12-16 18:25:36 所属栏目:安全 来源:网络整理
导读:如何从List中返回多个随机元素. 这个问题How to choose a random element from an array in Scala?指的是使用: import scala.util.Randomval A = Array("please","help","me")Random.shuffle(A.toList).head 我中的可变性认为我可以创建一个for循环并继续选
如何从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循环并继续选择下一个随机元素(不包括已经选择的元素)并将其添加到新的List中.在Scala中是否有更惯用/更实用的方法?

解决方法

head方法将返回列表的第一个元素,但take(n)将返回列表前面的n个元素.所以在你洗牌后,只需使用take:

def takeRandomN[A](n: Int,as: List[A]) =
  scala.util.Random.shuffle(as).take(n)

如果您的列表短于n,那么这将简单地随机播放.

(编辑:李大同)

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

    推荐文章
      热点阅读