📅  最后修改于: 2023-12-03 15:05:02.948000             🧑  作者: Mango
在 Scala 中,count()
方法用于返回迭代器中满足给定条件的元素个数。这个方法是一个中间操作,返回的是一个整数类型的值。
迭代器的count()
方法的语法如下:
def count(p: (A) ⇒ Boolean): Int
这里,p
是一个谓词函数,指定如何测试迭代器中的元素。这个函数的类型是 (A) => Boolean
,其中 A
是迭代器元素类型的占位符。该函数应接收迭代器元素并返回一个布尔值,指示该元素是否应计算在结果中。
下面是一个简单的示例,演示如何使用 count()
方法:
object Main extends App {
val nums = Iterator(1, 2, 3, 4, 5)
val count = nums.count(_ % 2 == 0)
println(s"There are $count even numbers in the iterator.")
}
在这个示例中,我们创建了一个 Iterator
对象 nums
,它包含一些整数。然后我们使用 count()
方法计算出这个迭代器中偶数的个数。我们传递给 count()
方法的参数是一个匿名谓词函数 _ % 2 == 0
,它对每个元素执行取余操作并测试其是否等于零。最后,我们将结果打印到控制台上。
运行该程序,输出如下:
There are 2 even numbers in the iterator.
注意,count()
方法只需要迭代一次序列,因此在处理大型序列时可以提供更好的性能。