Du sucre en ruby
Par ArtMoonik le samedi, juillet 21 2007, 14:57 - Script - Lien permanent
Les Hash faciles et pratiques.
Quand on est amené à faire du hachage en ruby, on fait des trucs genre:
tableau[cle] << donnee
Bien sur si c'est la première fois qu'on croise cette clé alors on aura une erreur genre:
NoMethodError: undefined method `<<' for nil:NilClass
Donc à la place on fait:
tableau[cle] = [donnee]
Au final ca donne:
if tableau[cle].nil? then
tableau[cle] = [donnee]
else
tableau[cle] << donnee
end
Bien sûr c'est horriblement laid et ca prend de la place et ca fait perdre du temps, bref ca pue. Donc, alternative, donnons à notre Hash 'tableau' une valeur par défaut autre qu'un nil, soit un Array ici:
tableau = Hash.new { |h,k| h[k] = [] }
tableau[cle] << donnee
Et puis le hachage, c'est bien :) Bonsoir les loutres.
Commentaires
rien a dire toujours le meilleur du web!