2014-01-24 29 views
0

在Scala doc中,Trait Iterator中的Operation具有Subiterators部分。你如何使用它們?如何使用Scala子過濾器「it filter p」

例如,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)有人可以給使用這些更多的例子操作,並解釋兩種語法格式之間的區別

回答

5

這兩種形式完全相同,當方法只需要一個參數時,Scala允許您刪除圓點和圓括號,因此it filter pit.filter(p)相同。

這就是「操作符」的實現方式,因爲Scala中的操作符只是方法;所以"this" + "that""this".+("that")相同。

另請參閱:https://stackoverflow.com/a/1182099/247985