我是Scala的新手,需要一些關於如何在元組列表中組合 過濾器和sum的幫助。Scala過濾元組列表中元素的條件總和
我需要的是一個元組過濾列表的整數的和其 基本問題的答案:
什麼是所有設置權重的總和?
結果應該是20,用於下面
列表中的樣本列表是很簡單:
val ln = List(("durationWeight" , true, 10),
("seasonWeight" , true, 10),
("regionWeight" , false, 5),
("otherWeight" , false, 5)
過濾根據布爾標誌的列表是一個簡單的:
val filtered = ln.filter { case(name, check, value) => check == true }
它返回我想要的元組。讓所有這些的總和,似乎有一張地圖,然後和工作 :
val b = filtered.map{case((name, check, value)) => value}.sum
它返回我所有的權重集想要的總和。
但是,如何在一個步驟中將濾波器,地圖和總和, 理想地結合在一個優雅的一個班輪中,我怎麼做?
感謝您的幫助。
歡迎堆棧溢出,Marvin.Hansen!就像未來的提示一樣,沒有必要編輯您的問題以反映問題已經解決或包含解決方案 - 已經通過將答案標記爲已接受的方式來內置該功能。謝謝! – ceyko