list - 使用 Scala 创建一个列表,其中包含从 0 到 count – 1 的方 block 作为包含重复项的列表

标签 list scala

我想使用 filltabulate 创建一个列表,其中包含从 0 到 -1 的方格作为包含重复项的列表。

类似这样的事情:

squareNtimes(5)

//> res0: List[List[Int]] = List(List(0, 0, 0, 0, 0), List(1, 1, 1, 1, 1), List(4, 4, 4, 4, 4), List(9, 9, 9, 9, 9), List(16, 16, 16, 16, 16))

我写了这个函数:

def squareNtimes(count: Int) = List.fill(count)(List.tabulate(count)(n => n * n))

但是输出不一样:

//> res0: List[List[Int]] = List(List(0, 1, 4, 9, 16), List(0, 1, 4, 9, 16), List(0, 1, 4, 9, 16), List(0, 1, 4, 9, 16), List(0, 1, 4, 9, 16))

有人知道我犯了什么错误吗?

最佳答案

你已经很接近了,我认为这应该可行:

List.tabulate(count)(n => List.fill(count)(n * n))

关于list - 使用 Scala 创建一个列表,其中包含从 0 到 count – 1 的方 block 作为包含重复项的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36653464/

相关文章:

python - 列表与列表的列表的乘法

scala - 使用Scala集合-CanBuildFrom麻烦

java - scala (jar) 库的着色依赖关系

python - 使用 python 将字符串和 float 写入 ASCII 文件

java - 检索 HashMap 中的列表。

c# - 在 c# 中对两个列表使用 foreach 循环以获取列表值

c++ - 清理 C++ STL 指针列表时出现双重 dealloc 问题

scala - spark dataframe 转换为 rdd 需要很长时间

oop - 泛型和受约束的多态性与子类型化

scala - 为什么 Scalatest 会混淆输出?