Alguém me diz a real importância de se usar o PRINTF em java ? Estou estudando sobre isso e tenho achado bastante confuso de entender. Tudo que se faz com o printf é o mesmo que usar o print comum ou println, então não vejo motivos de se usar o printf. Algúem pode me dizer se é realmente necessário usá-lo e qual a sua real função…
Não é a mesma coisa, os métodos print
e println
não recebem uma String
de formatação como parâmetro, já o printf
sim.
Provavelmente o que aconteceu é que nos exemplos que você viu, utilizaram o printf
em situações onde o print
ou println
resolveriam.
O diferencial do printf
é a String
de formação com a qual, como o nome já diz, você pode formatar os resultados na saída através da sintaxe de formatação.
Imagina que você quer imprimir um valor double só com 2 casas decimais, com os print
e println
você teria que formatar o resultado previamente em uma outra String
antes de poder imprimí-la.
Com o printf
você simplesmente fará printf("%.2f", valorDecimalAserFormatado)
.
Isso também é válido para outros tipos de dados, como datas, ou para colocar zeros à esquerda, enfim, só conferindo a sintaxe de formatação para ter uma noção das possibilidades.
Existe uma outra possibilidade e você pode continuar a usar o System.sysout.print e System.sysout.println que é formatar, por exemplo, o valor monetário usando o método format da classe String:
String nome = “Fernando”;
Double salario = 7500.0;
System.out.printf(“Meu nome é " + nome + " e recebo R$” +
String.format("%.2f", salario) + “\n”);