[ruby-it] contare frequenza su array

Giampiero Zanchi cidza a tin.it
Mer 4 Feb 2009 14:35:36 CET


Antonio Cangiano wrote:

> Io farei 
> cos�:
a.inject(Hash.new(0)) { |hash, item| hash[item] += 1; hash }
> 
> Ciao,
> Antonio

intanto grazie mille per la pronta risposta
ecco, avevo visto giusto che c'era una via pių breve e pulita; anch'io 
avevo tentato la strada con inject, ma non avevo trovato il modo di 
indicare che volevo 'totalizzare' su un hash inizialmente vuoto; fra 
l'altro ho notato che se faccio precedere il tutto da p
p a.inject(Hash.new(0)) { |hash, item| hash[item] += 1; hash }
ottengo in output proprio l'hash; quindi la inject ritorna proprio 
l'oggetto su cui ho 'totalizzato';
Ruby č troppo perfetto! fa sempre quello che ti aspetti
-- 
Posted via http://www.ruby-forum.com/.


More information about the Ml mailing list