Ruby · Essencial · Português · Informal
operador shovel
O operador <<, que acrescenta um item ao fim de um array ou de uma string alterando o objeto original. Devolve o próprio receptor, então pode ser encadeado.
Onde usar
Aparece ao montar arrays e strings em laços. Em strings, << é mais eficiente que += porque não cria um novo objeto a cada passo.
Em código
lista = []
lista << 1 << 2
p lista # => [1, 2]
s = "oi".dup
s << " " << "mundo"
p s # => "oi mundo"
t = s + "!"
p s.equal?(t) # => falseExemplos
Use o shovel para empilhar o item no array.
O shovel devolve o próprio array, então dá para encadear.
Cuidado
Como altera o objeto no lugar, falha em strings congeladas; use + ou dup quando não puder mutar.
Sinônimos
operador de concatenação