Je ne peux pas penser à une façon d'une ligne pour le faire. Y a-t-il un moyen?
207
Qu'en est-il de l'utilisation de la unshift
méthode?
ary.unshift(obj, ...) → ary
Ajoute des objets à l'avant de soi, déplaçant d'autres éléments vers le haut.
Et en cours d'utilisation:
irb>> a = [ 0, 1, 2]
=> [0, 1, 2]
irb>> a.unshift('x')
=> ["x", 0, 1, 2]
irb>> a.inspect
=> "["x", 0, 1, 2]"
shift
etunshift
quant à ce qui ajoute au tableau et ce qui supprime du tableau, supprimez mentalement un `` f '' des noms et vous obtenez une image trop claire de la direction. (Et puis vous devez vous rappeler que ces méthodes ne fonctionnent pas sur la "fin" du tableau.;)Vous pouvez utiliser
insert
:Où le premier argument est l'index à insérer et le second la valeur.
la source
attention, c'est destructeur!
la source
Vous pouvez également utiliser la concaténation de tableaux :
Cela crée un nouveau tableau et ne modifie pas l'original.
la source
Depuis Ruby 2.5.0, Array est fourni avec la
prepend
méthode (qui n'est qu'un alias pour launshift
méthode).la source
Vous pouvez utiliser
methodsolver
pour trouver les fonctions Ruby.Voici un petit script,
Exécution de ces impressions
Vous pouvez installer methodsolver en utilisant
la source
irb> require 'methodsolver'
causesLoadError: cannot load such file -- method_source
de ... de/var/lib/gems/1.9.1/gems/methodsolver-0.0.4/lib/methodsolver.rb:2
. Ruby 1.9.3p484, irb 0.9.6, Ubuntu 14.pry
au lieu deirb