String.format
Crie cadeias de caracteres formatadas
String.format é uma aula grátis de Java Academy no CoddyKit. Esta é a aula 3 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 Java Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Java Academy inclui 4 aulas no total.
Formatar sem Imprimir
printf envia o texto diretamente para o console. Mas às vezes você quer a cadeia de caracteres formatada como uma String para armazená-la, retorná-la ou reutilizá-la.
String.format faz exatamente isso: usa as mesmas regras, mas retorna um valor em vez de imprimir.
Seu Primeiro String.format
String.format usa os mesmos marcadores de posição que printf. Ele cria uma nova cadeia de caracteres e a devolve a você.
Aqui, o resultado é armazenado em msg e depois impresso.
public class Main {
public static void main(String[] args) {
String msg = String.format("Hello, %s!", "World");
System.out.println(msg);
}
}Os Mesmos Especificadores
Tudo o que você aprendeu se aplica: %d, %f, %.2f, larguras e sinalizadores funcionam em String.format.
A única diferença é que o resultado é retornado, não exibido.
public class Main {
public static void main(String[] args) {
String s = String.format("%s: %.2f", "Price", 9.5);
System.out.println(s);
}
}Armazenando o Resultado
Como retorna uma String, você pode mantê-la em uma variável, concatená-la ou passá-la para outro método.
Isso é útil para criar mensagens passo a passo.
public class Main {
public static void main(String[] args) {
String label = String.format("#%03d", 7);
System.out.println("ID " + label);
}
}Retornando Texto Formatado
Um método pode usar String.format para retornar uma cadeia de caracteres organizada. Isso mantém a lógica de formatação em um único lugar.
Abaixo, greet retorna a saudação formatada.
public class Main {
static String greet(String name) {
return String.format("Welcome, %s!", name);
}
public static void main(String[] args) {
System.out.println(greet("Mia"));
}
}Nenhuma Quebra de Linha Automática
Assim como printf, String.format não adiciona uma quebra de linha, a menos que você escreva \n na cadeia de caracteres de formatação.
Se você imprimir o resultado com println, ele adicionará a quebra de linha por você.
public class Main {
public static void main(String[] args) {
String s = String.format("Line one");
System.out.println(s);
}
}Vários Valores
Você pode passar tantos argumentos quantos forem os marcadores de posição. Eles preenchem os espaços da esquerda para a direita, assim como em printf.
Isso facilita criar uma linha de dados como uma única cadeia de caracteres.
public class Main {
public static void main(String[] args) {
String row = String.format("%s | %d | %.1f", "Tea", 3, 2.5);
System.out.println(row);
}
}Reutilizando uma Formatação
Como a cadeia de caracteres de formatação é apenas texto, você pode aplicá-la várias vezes com um laço para produzir cadeias de caracteres consistentes.
Cada chamada retorna uma nova cadeia de caracteres com valores diferentes.
public class Main {
public static void main(String[] args) {
for (int i = 1; i <= 3; i++) {
System.out.println(String.format("Item %d", i));
}
}
}printf Usa format Internamente
Internamente, System.out.printf(fmt, args) funciona como imprimir String.format(fmt, args).
Portanto, escolher entre eles depende realmente de você querer imprimir agora ou manter o texto para depois.
Criando Registros e Rótulos
String.format é útil para linhas de registro, rótulos de interface e nomes de arquivos quando você precisa de um padrão preciso.
Centralizar a formatação significa que uma alteração atualiza todas as mensagens.
public class Main {
public static void main(String[] args) {
int code = 404;
String log = String.format("[ERROR %d] not found", code);
System.out.println(log);
}
}As Mesmas Regras de Tipo se Aplicam
As regras de correspondência entre especificador e valor são idênticas: %d precisa de um número inteiro, %f precisa de um valor de ponto flutuante e uma incompatibilidade lança uma exceção durante a execução.
Verifique novamente as associações antes de executar.
Verificação Rápida
Qual é a diferença entre String.format e printf?
Recapitulação
String.format compartilha as regras de printf, mas retorna uma String que você pode armazenar, retornar ou reutilizar.
A seguir, você combinará larguras e alinhamento para criar tabelas organizadas.
Perguntas Frequentes
A aula “String.format” é grátis?
Sim — o texto completo de “String.format” é 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 Java Academy, atualize para CoddyKit PRO. O curso de Java Academy inclui 4 aulas no total.
O que vou aprender em “String.format”?
Crie cadeias de caracteres formatadas Você pratica Java Academy 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 Java Academy?
Nenhuma experiência prévia é necessária. Java Academy 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 3 de 4.
Quanto tempo leva a aula “String.format”?
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 Java Academy?
Sim. Cada aula de Java Academy 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.