Problemas com printf

9 respostas
R

Pessoal estou com um problema!
Quando uso o printf como no exemplo abaixo

System.out.printf("Nome: %s", nome);

é gerado um erro de compilação informando que o segundo parametro deveria ser um array de Object em não uma string como é meu caso.
Acontece que é assim que está o exemplo no livro.
O que será que está acontecendo??

PS: O meu JDK é 1.5

Obrigado pela atenção!

9 Respostas

C

Olá RoDnEy_PeReIrA,

Você está usando alguma IDE (NetBeans, Eclipse)? Ou tá compilando na mão? Apesar de você estar usando o Java 5, pode ser que, em algum lugar, esteja configurado pra compilar apenas com os recursos do Java 1.4, que é o motivo desse erro (o Java 1.4 não reconhece varargs).

Até mais, :wink:

K

teu método main está escrito assim ???

public static void main(String args[]){
}
R

Fala CD1!
Estou usando o Eclipse, mas eu acredito ter feito todas as alterações necessárias. Mas de qualquer forma, vc poderia me dizer onde devo fazer as alterações?? Obrigado

Sobre o que o koalah falou, eu realmente escrevi o main desse jeito. Mas tem algum problema ??

Muito obrigado pela atenção!

K

por este método é possivel enviar argumentos diretamente no console só isso…

U

no eclipse clique com o botão direito no projeto, va em Java\Compiler e configure para Java 5.0

só isto :smiley:

R

Oi pessoal, estou aqui de novo!! Ainda sobre este problema vou colocar aqui a mensagem que aparece:

The method printf(String, Object[]) in the type PrintStream is not applicable for the arguments (String, String)

Mas esse problema só acontece se eu compilar pelo Eclipse, pelo prompt de comando dá certo.

Sobre o que o urubatan disse, fiz essas modificações, mas ainda dá problema.

Só pra constar, a versão do Eclipse que eu uso é 3.0.2

Muito obrigado!

B

“RoDnEy_PeReIrA”:
Pessoal estou com um problema!
Quando uso o printf como no exemplo abaixo

System.out.printf("Nome: %s", nome);

é gerado um erro de compilação informando que o segundo parametro deveria ser um array de Object em não uma string como é meu caso.
Acontece que é assim que está o exemplo no livro.
O que será que está acontecendo??

PS: O meu JDK é 1.5

Obrigado pela atenção!

uai, isso tá parecendo a linguagem C… bom, não sei se tem várias formas no Java, mas eu aprendi assim: System.out.print("Nome: "+nome);

o erro não seria a virgula no lugar do mais, não?

J
The method printf(String, Object[]) in the type PrintStream is not applicable for the arguments (String, String)

por essa mensagem de erro posso supor que a sua variave nome é uma string… E o metodo printf exije um Objeto…

converta nome para Object[].

R

E aí bbcbreno blz!!
O método System.out.printf é novo no Java. É para saída formatada. É parecido mesmo com o C. Mas o problema, que já reparei, é que este erro só acontece quando uso o Eclipse!! A duvida que eu queria tirar com vcs é se esse problema é por causa da versão do Eclipse, que como eu disse é 3.0.2 e se eu deveria atualizar??

Obrigado pela atenção!!

Criado 20 de setembro de 2006
Ultima resposta 8 de out. de 2006
Respostas 9
Participantes 6