int[] vet = new int[a];
//int g = 0;
for (int j = 1; j <= a; j++) {
System.out.println("coloque os numeros que estarao no vetor:");
vet[j]=input.nextInt();
System.out.println(vet[j]);
}
Soma soma = new Soma();
System.out.println(soma.soma(vet, a));
}
}
O index do array inicia em 0.
Assim:
for (int j = 1; j <= a; j++)//na situação atual vai “estourar” o vetor com ArrayIndexOutOfBoundsException
O ideal e: for (int j = 0; j < a; j++) ou ajustar a parte interna do bloco de instrução.
Solução 1:
for (int j = 0; j < a; j++) {
System.out.println("coloque os numeros que estarao no vetor:");
vet[j]=input.nextInt();
System.out.println(vet[j]);
}
Solução 2:
for (int j = 1; j <= a; j++) {
System.out.println("coloque os numeros que estarao no vetor:");
vet[j-1]=input.nextInt();//ajuste mantendo o j dentro **maior index** do array
System.out.println(vet[j-1]);//ajuste
}
Modifiquei , mas ainda permanece dando erro …
o debug mostra vet[j]=input.nextInt(); como o erro
Mas obrigada mesmo assim
System.out.println("coloque os numeros que estarao no vetor:");
for (int i = 0; i < vet.length; i++) {
System.out.print((i + 1) + "º numero: ");
vet[i] = sc.nextInt();
}
int soma = 0;
for (int i = 0; i < vet.length; i++) {
soma += vet[i];
}
System.out.println(soma);