Interpolação de Strings
Parte da seção Lógica e Fluxo do Journey de Ruby da Coddy — lição 2 de 56.
O Ruby permite que você incorpore variáveis e expressões diretamente dentro de uma string de aspas duplas com #{...}. Isso é chamado de interpolação de string.
name = "Sam"
age = 30
puts "#{name} is #{age} years old." # Sam tem 30 anos de idade.A expressão dentro de #{...} pode ser qualquer coisa que o Ruby avalie:
price = 19.5
puts "Total: $#{price * 1.2}" # Total: $23.4A interpolação só funciona em strings de aspas duplas. Aspas simples tratam #{...} como texto simples.
x = 5
puts "x is #{x}" # x é 5
puts 'x is #{x}' # x é #{x}Desafio
InicianteLeia um nome e uma idade (duas linhas de entrada). Imprima uma linha no formato:
Hello, <name>! In 5 years you will be <age+5>.Para a entrada Alice e depois 30, a saída é:
Hello, Alice! In 5 years you will be 35.Folha de consulta
Interpolação de strings insere variáveis/expressões em strings de aspas duplas usando #{...}:
name = "Sam"
age = 30
puts "#{name} is #{age} years old." # Sam tem 30 anos.
puts "Total: $#{19.5 * 1.2}" # Total: $23.4Aspas simples tratam #{...} como texto simples — a interpolação só funciona com aspas duplas.
Experimente você mesmo
name = gets.chomp
age = gets.to_i
# TODO: use interpolação de strings para imprimir a mensagem
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Lógica e Fluxo
1Strings a Fundo
Visão Geral de Métodos de StringInterpolação de StringsIterando sobre StringsSplit e JoinRecapitulação - String Weaver4Blocos, Procs e Lambdas
O que é um Bloco?do..end vs ChavesA palavra-chave yieldParâmetros de BlocoProcs e LambdasRecapitulação - Iterador Customizado7Hashes Parte 2
Hash.new com Valores PadrãoIterando em HashesHashes AninhadosMesclando e TransformandoRecapitulação - Contador de Frequência10Projeto - Registros de Alunos
Visão Geral do ProjetoAdicionar Aluno2Intervalos
O que é um Intervalo?Métodos de IntervaloIntervalos em Case / WhenRecapitulação - Prática com Intervalos5O Poder do Enumerable
Select e RejectEncadeando o MapReduce / Injectcount, all?, any?, none?group_by e partitionsort_by, min_by, max_byRecapitulação - Data Pipeline