scala中for循環中得模式匹配

scala中最基本的for表達式,跟java是同樣的
java

for(x <- collection) { bibibibibib }

用x來迭代出collection中得每個元素
spa

在看一些其餘的例子scala

scala> for(i <- List(1,2,3)) println(i)
1
2
3

同時在scala中有變量綁定的概念,咱們能夠爲變量i綁定集合中得一個元素
code

scala> for(i@2 <- List(1,2,3)) println(i)
2

這樣就只能匹配到集合中得2元素了
io

在scala中,咱們能夠直接使用for循環中得篩選功能,這裏面就有點模式匹配的味道了。
for循環

scala> for((name,"female")<- Set("wang"->"male","zhang"->"female","h"->"female")) println(name+" ")
zhang 
h

篩選出集合中都是女性的人的名字class

一樣,咱們還可使用類型模式在集合中過濾特定類型的元素出來
變量

scala> for((k,v:Int) <- List(("A"->2),("B"->"C"))) {println(k)}
A
相關文章
相關標籤/搜索