Olá pessoal, eu estou tentando aprender java e estou usando o livro “java como programar” do Deitel. Eu estou usando o JCreator e estava tentando reproduzir um exemplo do livro, o codigo é o seguinte:
[color=blue]public class Welcome4
{
public static void main( String args[] )
{
System.out.printf( “%s\n%s\n”,
“Welcome to, Java programming!” );
}
}[/color]
Só que quando eu vou compilar ocorre o erro abaixo, e como estou começando agora não faço idéia do que possa ser. Será que alguém poderia me ajudar. Obrigado.
[color=red]--------------------Configuration: j2sdk1.4.2_15 --------------------
C:\Arquivos de programas\Xinox Software\JCreator LE\MyProjects\Scripts\Welcome4.java:8: cannot resolve symbol
symbol : method printf (java.lang.String,java.lang.String)
location: class java.io.PrintStream
System.out.printf( “%s\n%s\n”,
^
1 error
public class Welcome4
{
public static void main( String args[] )
{
System.out.printf( "%s\n%s\n", "Welcome to", "Java Programing!");
}
}
Se você perceber ali no printf existem dois %s que seriam dois argumentos string.
No seu código você juntou os 2 argumentos.Pode ver que se você criasse outras aspas.Ele iria funcionar
public class Welcome4
{
public static void main( String args[] )
{
System.out.printf( "%s\n%s\n",
"Welcome to, Java programming!", "Outro argumento" );
}
}
Não tinha percebido, já que também sou novato na linguagem.
Como tenho o jdk mais atual instalado e trabalhando com netBeans.Não tive esse problema na hora de compilar ^^
Então fica ai a primeira dica: sempre verifique a versão DE TUDO o que vc pode, pois esse tipo de coisa costuma acontecer com frequencia.
Imagine que vc esta desenvolvendo uma parada com uma biblioteca de versão 1.2.4 e, quando termina, ela é posta para executar num ambiente que tem a versão 1.0.3 – a chance de dar algo errado é BEM grande (a tal da lei de murphy…).
Agora desenvolver para uma versão mais antiga deve funcionar com uma versão mais nova (desde que seja stable) devido a questão de retrocompatibilidade).