Wenn ich eine Sammlung cvon Typen habe Tund eine Eigenschaft pfür T(z P. B. Typ ) vorhanden ist, wie kann ich einen Map-by-Extracting-Key am besten erstellen ?
val c: Collection[T]
val m: Map[P, T]
Ein Weg ist der folgende:
m = new HashMap[P, T]
c foreach { t => m add (t.getP, t) }
Aber jetzt brauche ich eine veränderbare Karte. Gibt es eine bessere Möglichkeit, dies so zu tun, dass es in einer Zeile steht und ich eine unveränderliche Karte erhalte ? (Natürlich könnte ich das oben genannte in ein einfaches Bibliotheksdienstprogramm verwandeln, wie ich es in Java tun würde, aber ich vermute, dass es in Scala keine Notwendigkeit gibt)
Traversable[K].mapTo( K => V)undTraversable[V].mapBy( V => K)waren besser!