Feature Java: Text Blocks

Por Gaspar Barancelli Junior em 24 de abril de 2024

Uma das adições mais notáveis ao Java é a introdução dos text blocks, que oferecem uma maneira mais limpa e legível de escrever strings multilinhas. A funcionalidade de Text Blocks foi entregue pela primeira vez como uma feature preview no Java 13, no JEP 355, depois aprimorada no Java 14 com o JEP 368, e, finalmente, incorporada definitivamente à linguagem no Java 15, no JEP 378. Essas melhorias significativas tornam a manipulação de strings mais eficiente e agradável. Vamos explorar essas funcionalidades e descobrir como elas podem melhorar a experiência de desenvolvimento em Java.

O que são Text Blocks?

Text Blocks, também conhecidos como blocos de texto, são uma nova forma de representar strings multilinhas no Java. Antes do Java 13, escrever uma string multilinha era uma tarefa um tanto quanto tediosa, exigindo o uso de caracteres de escape ou concatenação de strings. Com os Text Blocks, essa tarefa se torna muito mais simples e intuitiva.

Sintaxe

Para criar um Text Block em Java, você pode utilizar três aspas duplas """. A sintaxe básica é a seguinte:

String textBlock = """
    Este é
    um exemplo
    de Text Block
    no Java!
    """;

Os Text Blocks começam com três aspas duplas e, em seguida, as linhas de texto. O compilador ignora a linha que contém as três aspas duplas iniciais e a linha que contém as três aspas duplas finais.

Vantagens dos Text Blocks

Legibilidade

Uma das principais vantagens dos Text Blocks é a legibilidade aprimorada do código. Compare as três abordagens a seguir:

Com Text Blocks:
String comTextBlock = """
    Este é
    um exemplo
    com Text Block
    no Java!
    """;
Com Concatenação de Strings:
String comConcatenacao = "Este é\n" +
    "um exemplo\n" +
    "com Concatenação de strings\n" +
    "no Java!";
Com StringBuilder:
StringBuilder comStringBuilder = new StringBuilder();
comStringBuilder.append("Este é\n");
comStringBuilder.append("um exemplo\n");
comStringBuilder.append("com StringBuilder\n");
comStringBuilder.append("no Java!");
String comStringBuilderResult = comStringBuilder.toString();

Como você pode ver, o código usando Text Blocks é muito mais legível e mantém a estrutura do texto de forma clara e direta em comparação com a concatenação de strings e o uso de StringBuilder.

Melhor formatação

Com Text Blocks, não é mais necessário se preocupar com a formatação do código. Você pode simplesmente colar o texto e manter a formatação exata, sem a necessidade de caracteres de escape, concatenação de strings ou StringBuilder.

Inclusão de espaços em branco

Os Text Blocks também permitem espaços em branco à esquerda das linhas, enquanto as linhas são recuadas com base na linha de fechamento do Text Block. Isso permite que você mantenha a formatação do texto e, ao mesmo tempo, mantenha o código bem estruturado.

Facilidade de leitura e manutenção

Text Blocks tornam o código mais fácil de ler e manter. Em comparação com a concatenação de strings ou o uso de StringBuilder, os Text Blocks oferecem uma solução mais limpa e direta.

Conclusão

Os Text Blocks são uma adição bem-vinda ao Java, tornando mais fácil escrever e manter strings multilinhas. Eles melhoram significativamente a legibilidade do código, permitindo que os desenvolvedores foquem mais na lógica do programa do que na formatação das strings. Embora tenham algumas limitações, os benefícios superam em muito as desvantagens. Portanto, sempre que estiver lidando com strings multilinhas no Java, considere usar Text Blocks para tornar seu código mais limpo e legível.

// Compartilhe esse Post

💫
🔥 NOVO APP

Domine o Inglês em 30 dias!

Inteligência Artificial + Repetição Espaçada • Método cientificamente comprovado

✅ Grátis para começar 🚀 Resultados rápidos
×