gpt4 book ai didi

scala - 使用折叠计算 Scala 列表中的 Int 数

转载 作者:行者123 更新时间:2023-12-04 22:20:08 26 4
gpt4 key购买 nike

假设我有以下任何类型的列表:

val list = List("foo", 1, "bar", 2)

我现在想编写一个函数,该函数仅使用折叠计算列表中的 Int 数。在上面的列表的情况下,结果应该是“2”。

我知道使用 fold 计算所有元素的数量看起来像这样:
def count(list: List[Any]): Int =
list.foldLeft(0)((sum,_) => sum + 1)

我如何调整它以仅计算 Int 的出现次数?

最佳答案

另一个版本:

list.count(_.isInstanceOf[Int])

而且,如果你坚持使用 foldLeft 版本,这里有一个:
def count(list: List[Any]): Int =
list.foldLeft(0)((sum, x) => x match {
case _: Int => sum + 1
case _ => sum
})

关于scala - 使用折叠计算 Scala 列表中的 Int 数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29217544/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com