Forum: Italian Ruby user group sort

Announcement (2017-05-07): www.ruby-forum.com is now read-only since I unfortunately do not have the time to support and maintain the forum any more. Please see rubyonrails.org/community and ruby-lang.org/en/community for other Rails- und Ruby-related community platforms.
738ac200073d9cca7cbd98ce98894865?d=identicon&s=25 Njna Njna (njna)
on 2008-11-26 18:36
ciao a tutti, ho un array "lista" con all'interno degli oggetti "libro".
ogni oggetto ha varie caratteristiche tra le quali il prezzo.
io devo ordinare questo array in base al prezzo in ordine crescente.
ho pensato di usare sort ma giustamente fare lista.sort genera errori
perchè il sistema non sa come ordinarli.
devo perciò definire un <=> che mi permetta di ordinare questo array.
cosa devo scrivere all'interno di:

def <=>

al fine di ordinare questo array?

grazie a tutti!
Eaf76558277bad82dcf2405a36208eca?d=identicon&s=25 Pierpaolo Sanna (Guest)
on 2008-11-26 20:17
(Received via mailing list)
Puoi fare in 2 modi
ordinare così
 lista.sort {|l1, l2| l1.prezzo <=> l2.prezzo}

oppure definire in Libro il metodo <=> così

def <=> other
        prezzo <=> other.prezzo
end

e richiamare lista.sort per ordinare

ciao

2008/11/26 Njna Njna <v_orecchia@hotmail.com>
This topic is locked and can not be replied to.