我想得到这样的东西:Seq((1,2), (42, 45), (54, 52), ...).
换句话说,我想用随机整数对创建长度为n
的Seq
。
我试着做一些类似的事情:(1 to n).toSeq.map(_ -> (scala.util.random.nextInteger(),scala.util.random.nextInteger() ))
但是,它返回一些IndexedSeq
而不是Seq
有人能帮我吗?
正如注释中所解释的,它返回IndexedSeq
是可以的,因为这是Seq
的一个子类型。但Scala有一个名为fill
的库方法,它可以做你想做的事:
Seq.fill(n)((scala.util.Random.nextInt(), scala.util.Random.nextInt()))
然而,最好明确您想要的实际类型(Vector
、List
等(:
Vector.fill(n)((scala.util.Random.nextInt(), scala.util.Random.nextInt()))
这仍然可以分配给Seq
,但您可以为应用程序选择适当的实现。