Sou iniciante em Java, e tenho o seguinte programa (que compila corretamente):
public class ProgramaIf
{
public static void main (String args[])
{
int quente = 40, frio = 10;
int atual;
atual = Integer.parseInt(args[0]);
System.out.println (atual);
if (atual == frio)
{
System.out.println("Frio");
}
else
{
if (atual == quente)
{
System.out.println("Quente");
}
}
if ((quente < atual) && (atual < frio))
{
System.out.println("Normal");
}
else
{
System.out.println("Excessivo");
}
System.exit(0);
}
}
Quando tento executar, recebo a seguinte mensagem:
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
at ProgramaIf.main(ProgramaIf.java:8)
Creio que essa exceção seja causada pelo comando
atual = Integer.parseInt(args[0]);
Possuo Windows 98SE e minhas variáveis de ambiente estão configuradas do seguinte modo:
SET PATH=%PATH%;c:\j2sdk1.4.1_02\bin
SET CLASSPATH=.;c:\j2sdk1.4.1_02\lib\tools.jar
SET JAVA_HOME=c:\j2sdk1.4.1_02
Será que alguém pode me dizer o que está dando esse erro? Creio que seja de configuração, pois o programa acima foi escrito por meu professor.
Desde já agradeço pela atenção, fico no aguardo de uma breve resposta.
Atenciosamente,
Glória Lopes
:-o
Problema com a configuração do Classpath
G
3 Respostas
J
Oi
Se vc estiver usando alguma IDE ou editor pra compilar e rodar não vai dar muito certo não…Vc vai ter que compilar e na hora de rodar vc vai ter que usar o shell (DOS) e vai digitar: "java programaIf 50", onde 50 será o parametro passado para args[0], aí sim ele vai dar certo…
T+
P
Glória,
Quando você for rodar seu programa, deve passar um número como argumento que o método main irá receber. Por exemplo, no prompt, digite "java ProgramaIf 40" (ou qualquer outro número).
Seu programa está correto.
Patrícia
G
Certo, problema resolvido!!!
Muito obrigada!! Vocês me ajudaram muito!
Um grande abraço,
Glória 
Criado 28 de abril de 2003
Ultima resposta 30 de abr. de 2003
Respostas 3
Participantes 3