Ho una lezione su Ruby
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 = []
Voglio spingere MyClass#item1
a unique_array_of_item1
, ma solo se unique_array_of_item1
non lo contiene item1
ancora. C'è una soluzione semplice che conosco: basta scorrere my_array
e controllare se unique_array_of_item1
contiene già la corrente item1
o meno.
Esiste una soluzione più efficiente?
Set#each
eSet#to_a
) delegano a@hash
. E a partire da Ruby vengono ordinati 1.9 hash. "Gli hash enumerano i propri valori nell'ordine in cui sono state inserite le chiavi corrispondenti." ruby-doc.org/core-1.9.1/Hash.html