Solucionado (ver solução)
Solucionado
(ver solução)
3
respostas

Duvida com concatenação

Bom dia,

Fui dar uma lida em concatenação em Ruby, e me deparei com as seguintes possibilidades:

1.

puts "Olá " + user

2.

puts "Olá " << user

Gostaria de saber qual a diferença entre cada operador e quando utilizar cada um!

Grato!

3 respostas

Daniel, olha isso aqui pra ver se te ajuda

solução!

Oi Daniel,

A diferença entre os dois é que o primeiro concatena mas não modifica a String, apenas retorna uma nova. Exemplo:

mensagem = "Olá "
user = "Daniel"
puts mensagem + user # Aqui aparecerá "Olá Daniel"
puts mensagem # Aqui continua "Olá "

Este tipo de concatenação é utilizado quando você quer juntar duas Strings para uma impressão ou para guardar este resultado em uma terceira String.

Já no segundo caso, a operação feita é um append, modificando a String. Exemplo:

mensagem = "Olá "
user = "Daniel"
puts mensagem << user # Aqui aparecerá "Olá Daniel"
puts mensagem # Aqui foi modificado para "Olá Daniel "

Este caso é utilizado quando você quer trabalhar com a nova String e não precisa do valor antigo separado.

Abraço!

Valeu gente,

Fiquei confuso no começo, mas a explicação da Joviane deixou tudo mais claro!

Obrigado a todos!

Abraços e bons estudos!