Ich habe eine Ruby-Klasse
class MyClass
attr_writer :item1, :item2
end
my_array = get_array_of_my_class() #my_array is an array of MyClass
unique_array_of_item1 = []
Ich möchte drücken MyClass#item1
zu unique_array_of_item1
, aber nur , wenn unique_array_of_item1
nicht das enthält item1
noch. Es gibt eine einfache Lösung, die ich kenne: Durchlaufen Sie einfach my_array
und prüfen Sie, ob unique_array_of_item1
der aktuelle bereits vorhanden ist item1
oder nicht.
Gibt es eine effizientere Lösung?
Set#each
undSet#to_a
)@hash
. Und ab Ruby 1.9 werden Hashes bestellt. "Hashes zählen ihre Werte in der Reihenfolge auf, in der die entsprechenden Schlüssel eingefügt wurden." ruby-doc.org/core-1.9.1/Hash.html