Strings multilinha
Use blocos entre aspas triplas.
Strings multilinha é uma aula grátis de Scala for Backend Engineering & Functional Programming no CoddyKit. Esta é a aula 4 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Scala for Backend Engineering & Functional Programming, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.
O que são cadeias multilinhas?
Às vezes, você precisa de um texto que ocupe várias linhas, como uma mensagem, uma consulta JSON ou SQL.
Scala permite escrevê-los com três aspas, que preservam as quebras de linha exatamente como você as digitou.
val text = """Line one
Line two"""
println(text)Sintaxe com três aspas
Coloque o texto entre três aspas duplas de cada lado: """...""".
Dentro delas, você não precisa escapar aspas duplas comuns, o que é ideal para textos que contêm aspas.
val json = """{"name": "Ada"}"""
println(json)Quebras de linha reais
Em uma cadeia entre três aspas, pressionar Enter cria uma nova linha real no valor.
Isso é excelente para blocos de texto em que você quer preservar a disposição.
object Main extends App {
val poem = """Roses are red
Scala is neat"""
println(poem)
}O problema da indentação
Se você indentar uma cadeia multilinha no código, esses espaços iniciais se tornarão parte do valor.
Isso costuma ficar desorganizado quando o texto é impresso. Scala oferece uma forma simples de remover a indentação.
val msg = """Hello
World"""
println(msg)stripMargin
stripMargin remove os espaços em branco iniciais até um caractere de margem, que por padrão é |.
Coloque um | no início de cada linha e depois chame stripMargin para alinhar seu código de forma organizada.
val msg = """Hello
|World""".stripMargin
println(msg)Um bloco multilinha organizado
Combinar três aspas com stripMargin resulta em um código legível e uma saída limpa.
Cada linha começa com |, que é removido quando o texto é impresso.
object Main extends App {
val report = """Report
|Total: 5
|Done!""".stripMargin
println(report)
}Caractere de margem personalizado
Você pode passar um caractere de margem diferente para stripMargin se | entrar em conflito com seu texto.
Por exemplo, use # como marcador de margem.
val s = """One
#Two""".stripMargin('#')
println(s)Multilinhas com interpolação
Você pode combinar três aspas com o interpolador s para inserir valores em um texto multilinha.
Coloque s antes das três aspas de abertura e use $variable como de costume.
val name = "Sam"
val msg = s"""Hi $name,
|Welcome aboard!""".stripMargin
println(msg)Criando uma consulta SQL
Cadeias multilinhas são excelentes para escrever SQL ou outro texto longo no código de backend.
A disposição permanece legível tanto no código-fonte quanto na saída.
val query = """SELECT id, name
|FROM users
|WHERE active = true""".stripMargin
println(query)Aspas dentro de aspas
Dentro de três aspas, as aspas duplas comuns não precisam ser escapadas. Isso evita a poluição visual de escrever \" em toda parte.
É perfeito para inserir JSON ou frases entre aspas.
val line = """He said "hello" to me"""
println(line)Combinando com métodos
Uma cadeia multilinha ainda é uma String normal, portanto todos os métodos habituais funcionam nela.
Aqui, removemos espaços e contamos o comprimento depois de retirar a margem.
val block = """abc
|def""".stripMargin
println(block.length)
println(block.toUpperCase)Verificação rápida
Como remover a indentação inicial de uma cadeia multilinha?
Recapitulação
Você aprendeu a escrever textos em várias linhas com aspas triplas """...""", que preservam as quebras de linha e não exigem o escape de aspas.
Você usou stripMargin com um marcador | para manter o código organizado, combinou-o com o interpolador s e aplicou métodos normais de texto ao resultado.
Perguntas Frequentes
A aula “Strings multilinha” é grátis?
Sim — o texto completo de “Strings multilinha” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Scala for Backend Engineering & Functional Programming, atualize para CoddyKit PRO. O curso de Scala for Backend Engineering & Functional Programming inclui 4 aulas no total.
O que vou aprender em “Strings multilinha”?
Use blocos entre aspas triplas. Você pratica Scala for Backend Engineering & Functional Programming com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.
Preciso ter experiência prévia para começar Scala for Backend Engineering & Functional Programming?
Nenhuma experiência prévia é necessária. Scala for Backend Engineering & Functional Programming no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 4 de 4.
Quanto tempo leva a aula “Strings multilinha”?
A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.
Posso escrever e executar código nesta aula de Scala for Backend Engineering & Functional Programming?
Sim. Cada aula de Scala for Backend Engineering & Functional Programming inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.
Todas as aulas deste curso
- Fundamentos de strings
- Interpoladores s, f e raw
- Métodos comuns de strings
- Strings multilinha