Scala: Leichter Weg, um Arrays in einem Set oder einer Map zu platzieren

8

Da == nicht mit Arrays funktioniert, kann ich keine Array-Sätze (oder Karten mit Array-Schlüsseln) erstellen. Ich möchte lieber nicht den Leistungseinbruch machen, wenn ich meine Arrays in einen Vektor oder eine Liste umwandeln würde. Gibt es eine leichte Möglichkeit, natürlichen Vergleich und Hashcode auf Arrays zu definieren, damit ich sie in ein Set stecken kann?

    
Jay Hacker 21.11.2011, 22:39
quelle

1 Antwort

11

Verwenden Sie WrappedArray von collection.mutable . Es bietet die richtige Gleichheit für Arrays mit einem minimalen Overhead. apply , update usw. Aufrufe werden an das zugrunde liegende Array delegiert. Außerdem gibt es spezielle Klassen für primitive Typen (z. B. WrappedArray.ofInt ), um Boxen und Unboxing zu vermeiden.

%Vor%     
missingfaktor 21.11.2011, 23:01
quelle

Tags und Links