我有以下列表:斯卡拉 - 使用過濾器模式匹配
case class myPair(ids:Int,vals:Int)
val someTable = List((20,30), (89,90), (40,65), (45,75), (35,45))
val someList:List[myPair] =
someTable.map(elem => myPair(elem._1, elem._2)).toList
我想過濾所有的「IDS」> 45。 我想是這樣的文章filter using pattern matching):
someList.filter{ case(myPair) => ids >= 45 }
但沒有成功。 感謝您的幫助
階> someList.filter {情況下(myPair)=> myPair.ids> = 45} RES1:列表[myPair] =列表(myPair(89,90) ,myPair(45,75)) (但Tomasz Nurkeiviecz的答案比較好,偏離課程) – twillouer 2013-02-18 17:18:51
@twillouer:感謝您的修改,但請添加一個單獨的答案,以便您可以獲得完整的功勞。 – 2013-02-18 17:22:01
您可以簡化您的'map'調用:'someTable.map(myPair.tupled).toList' – EECOLOR 2013-02-18 17:42:15