ExpertiDict

Ruby · Essencial · Português · Informal

operador shovel

/opeɾaˈdoʁ ˈʃɔvew/substantivo

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)  # => false

Exemplos

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

Veja também

Todos os termos de Ruby