私がコレクションしている場合c
のタイプのをT
とプロパティがあるp
上T
(タイプのP
、たとえば)、行うための最善の方法何であるマップ・バイ・抽出-keyは?
val c: Collection[T]
val m: Map[P, T]
1つの方法は次のとおりです。
m = new HashMap[P, T]
c foreach { t => m add (t.getP, t) }
しかし、今は変更可能なマップが必要です。これを1行にして、不変の Map を作成するためにこれを行うより良い方法はありますか?(明らかに、Javaの場合と同様に、上記を単純なライブラリユーティリティに変えることができますが、Scalaでは必要がないと思います)
Traversable[K].mapTo( K => V)
とTraversable[V].mapBy( V => K)
良好でした!