我有下面的代碼:瞭解如何爲報表按地圖,flatMap代表和過濾
val e1 = 10 :: 15 :: 20 :: 25 :: Nil
val e2 = 10 :: 15 :: 20 :: 25 :: Nil
val y = for {
e <- e1 if(e%2==0)
} yield e
val y1 = e1.withFilter(x => (x%2 == 0)).map(Int=>Int)
val e31 = for{
i <- e1
j <- e2 if (isPrime(i+j))
} yield(i,j)
現在你可以看到y
和y1
兩者都讓我值完全相同,這證明我成功代表for
聲明具有(單個生成器+過濾器)withFilter和map。
但是,當我有一個for
語句與多個生成器和過濾器(例如:val e31
),我無法找到如何用map,filterMap和withFilter表示。
感謝Marth。這真的幫助我理解這個概念。 –