如何使用Scala subiterators“it filter p”

时间:2014-01-24 01:46:04

标签: list scala iterator

在Scala doc中,trait Iterator中的Operation具有Subiterators部分。你是如何使用它们的?

例如,it filter p描述为“迭代器返回it中满足条件p的所有元素。

scala> val list1 = List(1,2,3,4,5,6)
list1: List[Int] = List(1, 2, 3, 4, 5, 6)

scala> list1 filter (_ > 3)
res17: List[Int] = List(4, 5, 6)

scala> list1.filter(_ > 3)
res18: List[Int] = List(4, 5, 6)

正如您所看到的,您可以使用list.filter(condition)list filter (condition)有人可以提供更多使用这些操作的示例,并解释两种语法格式之间的区别。

1 个答案:

答案 0 :(得分:5)

这两种形式是相同的。当方法只使用一个参数时,Scala允许您删除点和圆括号。因此it filter pit.filter(p)相同。

这就是"运营商"也实现了,因为Scala中的运算符只是方法;因此"this" + "that""this".+("that")相同。

另请参阅:https://stackoverflow.com/a/1182099/247985