Templates de String
Parte da seção Fundamentos do Journey de Kotlin da Coddy. Lição 36 de 93.
Você já viu os templates de string em ação ao longo deste curso: o símbolo $ que permite incorporar variáveis diretamente em strings. Vamos explorar esse recurso mais detalhadamente.
Os templates de string permitem inserir valores de variáveis em strings usando o prefixo $:
fun main() {
val name = "Alice"
val age = 25
println("My name is $name and I am $age years old.")
}
// Saída: My name is Alice and I am 25 years old.Para nomes de variáveis simples, basta usar $variableName. Mas, quando precisar incluir expressões ou acessar propriedades, coloque-as entre chaves:
fun main() {
val price = 15
val quantity = 3
println("Total: ${price * quantity}")
println("Next year I'll be ${25 + 1}")
}
// Saída:
// Total: 45
// No próximo ano eu terei 26As chaves informam ao Kotlin para avaliar a expressão dentro delas antes de inseri-la na string. Isso funciona com qualquer expressão válida: aritmética, chamadas de função ou acesso a propriedades.
Se você precisar imprimir um cifrão real, escape-o com uma barra invertida:
fun main() {
val price = 50
println("The cost is \$$price")
}
// Saída: O custo é $50Desafio
FácilEscreva uma função formatReceipt que receba item, quantity e pricePerUnit e retorne uma linha de recibo formatada.
Use templates de string com inserção simples de variável ($variable) e avaliação de expressão (${expression}) para construir a string do recibo.
Formato: A string retornada deve seguir este padrão exato:
[item] x[quantity] = $[total]Em que [total] é o resultado da multiplicação de quantity por pricePerUnit.
Parâmetros:
item(String): O nome do itemquantity(Int): O número de itens compradospricePerUnit(Int): O preço de cada item
Retorna: Uma linha de recibo formatada (String). Formato: Apple x3 = $15
Experimente você mesmo
fun formatReceipt(item: String, quantity: Int, pricePerUnit: Int): String {
// Escreva o código aqui
}
Esta lição inclui um quiz rápido. Comece a lição para respondê-lo e acompanhar seu progresso.
Todas as lições de Fundamentos
4Operadores – Parte 1
Operadores aritméticosOperador móduloAtribuição aumentadaOperadores de comparaçãoRecapitulação – Matemática simples7Entrada e Saída Básicas
Função PrintlnTemplates de StringEntrada com ReadLineConversão de TiposRevisão - Anos até a AposentadoriaRevisão - Verdadeiro ou Falso10Funções
Declare uma funçãoParâmetros e argumentosValores de retornoArgumentos nomeadosValores padrãoFunções de expressão únicaRecapitulação — função SigmaRecapitulação — função de validação2Variáveis
Val vs VarInferência de TiposNúmerosStringBooleanoConvenções de NomenclaturaRecapitulação - Inicializar Variáveis5Operadores – Parte 2
Operadores lógicos – Parte 1Operadores lógicos – Parte 2Operadores lógicos – Parte 3Ternário com expressão ifRecapitulação – Lógica simples8Calculadora de Divisão da Conta
Mensagem de Boas-vindasObtendo a Entrada11FizzBuzz com uma Reviravolta
Visão Geral do JogoA Função FizzBuzz3Nullabilidade
O que é Null SafetyTipos anuláveisOperador de chamada seguraOperador ElvisNoções básicas do desafio de funçõesAsserção de não nuloRecapitulação - Acesso seguro6Tomada de Decisões
Instrução IfIf - ElseIf como ExpressãoExpressão WhenWhen com IntervalosRecapitulação - Calculadora Simples9Laços de Repetição
Laço ForLaço WhileLaço Do-WhileBreakContinueIntervalos em LaçosLaço AninhadoRecapitulação - FatorialRecapitulação - Entrada Dinâmica12Fundamentos de Listas
List vs MutableListAcessando ElementosModificando ListasMétodos de ListaPair e TripleRecapitulação - Lista de ProdutosRecapitulação - Lista Invertida15Rastreador de Despesas Diárias
Visão Geral do ProjetoSair do ProgramaPratique por conta própria: Playground de Kotlin