簡體   English   中英

模式匹配可建立多個序列

[英]Pattern Match build multiple Seqs

我正在尋找一種使用像這樣的模式匹配建立多個Seq的方法:

statuses.map(result => {
    (status.matchStatus, status.source) match {
      case ("Matched", Some(API.name)) => //Add status to a matchedApi seq
      case ("Matched", Some(MANUAL.name)) => //Add status to a matchedManual seq
      case ("Changed", Some(API.name)) => //Add status to a changedApi seq
      case ("Changed", Some(ENTRY.name)) => //Add status to a changedManual seq          
    }
})

有誰知道這在理論上是否可行,還是我完全錯誤地建立了這些列表?

如果可以使用動態組,則可以按狀態+源元組對值進行分組

val groups = statuses.groupBy(x => (x.matchStatus, x.source))

然后像這樣訪問它

val matchedApi = groups.get("Matched", Some(API.name)).getOrElse(Seq.empty)
val changedManual = groups.get("Changed",Some(MANUAL.name)).getOrElse(Seq.empty)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM