Se você fosse fazer isso com o println, ele faria assim:
doublenum=22.123456;System.out.println(num);
Saída gerada: 22.123456
E o println pula uma linha.
====================
Já ia esquecendo, o print faz o mesmo do println sem pular a linha!
R
RobertoAraujoMF
Acho que você ainda não entendeu minha dúvida^^
Eu já sei o que diferencia cada um e sei a sintaxe de cada um, como você acabou de explicar aqui
O problema é que eu não sei o que está havendo… print, println e printf não são para janelas suspensas (igual JOptionPane)? É essa a minha dúvida! Qualquer coisa que eu escreva usando estes métodos, as mensagens simplesmente não aparecem. Isso acontece no código que passei antes, que eu usei como exemplo o println… a mensagem “Oi!” não aparece na tela e eu queria saber por que, pois parece que não tem nada de errado…
Eric_Yuzo
Elas imprimem o texto no próprio terminal/prompt onde são executadas. Se estiver executando de uma IDE, aparecem no console.
R
RobertoAraujoMF
Aaah, obrigado ;]
Mas aqui, se eu exportar o arquivo jar do IDE, como fica? Onde apareceriam essas mensagens do print, println ou printf?
Eric_Yuzo
Continua aparecendo no terminal. Para ver as mensagens teria que executar o jar pelo terminal.
R
RobertoAraujoMF
Obrigado pessoal
ViniGodoy
Janelas suspensas imprimem strings. Não tem nada a ver com o println, printf ou print.
Entretanto, há algumas formas de não perder os recursos:
Você pode usar o método String.format. Ele monta a String formatada, como se fosse o printf:
Você pode usar a classe StringWriter, associada a um PrintWriter:
StringWriter str = new StringWriter();
PrintWriter out = new PrintWriter(str);
double num = 22.123456;
out.println("O número é:");
out.printf("%.2f", num);
JOptionPane.showMessageDialog(str.toString());
Note que no código acima o out escreve dentro do str. E no final, apenas enviamos a String do str pra a janela.
Esse processo é bastante útil para imprimir stacktraces:
catch (AlgumaException e) {
StringWriter str = new StringWriter();
PrintWriter out = new PrintWriter(str);
out.println("Erro! Exception gerada:");
e.printStackTrace(out);
JOptionPane.showMessageDialog(this, str.toString());
}
Ravnus
RobertoAraujoMF:
Acho que você ainda não entendeu minha dúvida^^
RobertoAraujoMF:
Olá, pessoal
Eu já sei a diferença sintática entre print, println e printf, mas QUANDO usá-los?
Bom, cara, então tente explicar direito a sua dúvida para não ocorrer de fazer os outros perderem tempo tentando explicar em vão.
Se você tivesse colocado algo como: “Imprimir na tela com janelas”, teria facilitado.