Comment puis-je en majuscules chaque élément d'un tableau?
Comment puis-je retourner un tableau d'éléments en majuscules? Sortie attendue serait:
["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
=> ["MONDAY", "TUESDAY", "WEDNESDAY", "THURSDAY", "FRIDAY"]
La suite n'a pas de travail et à gauche comme des minuscules.
Day.weekday.map(&:name).each {|the_day| the_day.upcase }
=> ["Monday", "Tuesday", "Wednesday", "Thursday", "Friday"]
Vous devez vous connecter pour publier un commentaire.
Renvoyer un Nouveau Tableau
Si vous souhaitez retourner un en majuscule, tableau, utilisez #map:
Comme vous pouvez le voir, le tableau d'origine n'est pas modifié, mais vous pouvez l'utiliser en majuscule la valeur de retour de #carte partout où vous pouvez utiliser une expression.
Mise à jour de la Matrice de en Place
Si vous souhaitez mettre en majuscule le tableau en place, l'utilisation #map! au lieu de cela:
.compact
pour supprimer tous lesnil
s, puis faireupcase
..array.compact!.map!(&:upcase)
Cela devrait fonctionner:
Ou, si vous voulez économiser de cycles CPU
Dans votre exemple, remplacer "à chaque" avec la "carte".
Tandis que "chacun" parcourt votre tableau, il n'est pas de créer un nouveau tableau contenant les valeurs renvoyées par le bloc.