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!
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!
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!