Estou digitando no J Creator as seguintes linhas de código. E não consigo compilar nem por uma porra !
Na verdade compila, só não executa.
Recebo a mensagem: Exception in thread “main” java.lang.ArrayindexOutOfBoundsException at Alternativa composta.main
Alguem sabe que merda é essa ?
class AlternativaComposta {
public static void main(String args[])
{
double sal;
sal=Double.parseDouble(args[0]);
if(sal>1500)
System.out.println("Voce ganha bem...");
else
System.out.println("Ta precisando de um aumento ...");
}
}
[color=“green”][size=“11”]* Editado para conter BBCode - matheus[/size][/color]
cara, só por simplicidade na hr de vc executar isso na IDE, mude a linha:
sal = Double.parseDouble( args[0] );
…para:
sal = Double.parseDouble(
javax.swing.JOptionPane.showInputDialog( null, "Salario" ) );
…ocorre q vc esta tentando acessar um parametro para o metodo main, q vc deve passar na hr q executa…, eu mudei para acessar um valor q tu mesmo pode dizer em um dialogo de entrada.
É isso mesmo JLVS, o Matheus está corretissimo. Geralmente as IDEs não passam parametro algum ao método main, portanto se vc quiser um parametro desses terá um de Runtime, ou seja, em tempo de execução, por isso teu código compila mas não roda.
Outra forma de executar é passar o parametro manualmente, ao invés de usar o que o Matheus disse, tu deixa do jeito antigo e faz assim:
Ao invés de executar no JCreator, voi no Shell do DOS e faça o seguinte:
java AlternativaComposta <parametro> onde o parametro deve ser um número.
Só para complementar a assinatura do metodo main é esta:
public static void main(String[] args)
Então vc pode chamar seu prg enviando um Array de String, Array == Vetor, logo o objeto de array args, pode pegar elementos em sua posições tipo args[0], args[1], args[2], … contudo se vc tentar acessar uma posição do vetor que não exista, dara um ArrayindexOutOfBoundsException. Acho que entendeu agora …