これは化粧用のScalaの質問の一種です。オブジェクトのリストは、オブジェクトの属性でフィルタリングする必要があります。属性の最初のチェックが空のリストになるかどうかを報告する必要があります。簡体字コード:もちろん複数の述語をフィルタリングして報告する
case class Account (id: Int, balance: Float)
def doFilter(list: List[Account], focusId: Int, thresHold: Float): List[Account] = {
list.filter(_.id == focusId)
// ## if at this point if the list is empty, an error log is required.
.filter(_.balance >= thresHold)
}
var accounts = List(Account(1, 5.0f), Account(2, -1.0f), Account(3, 10f), Account(4, 12f))
println(s"result ${doFilter(accounts, 1, 0f)}")
私は、フィルタステートメントを分割し、中間結果を確認するが、私は、私はそれをより多くのScalaの方法を行うことができます願っていたことができます..私はのようなものを考えました。
しかし、これは機能しません。目的の動作を実装する機能(または流暢)な方法はありますか?