package com.arthurlmoreira.operators;
import java.util.Scanner;
abstract class Numbers {
public double x;
protected int b;
protected double a[] = new double[b];
protected void oneNumber() {
b = 1;
Scanner in = new Scanner(System.in);
System.out.print("Digite o único número: ");
a[0] = in.nextDouble();
}
protected void twoNumbers() {
b = 2;
Scanner in = new Scanner(System.in);
System.out.print("Digite o primeiro número: ");
a[0] = in.nextDouble();
System.out.print("Digite o segundo número: ");
a[1] = in.nextDouble();
}
protected void moreNumbers() {
Scanner in = new Scanner(System.in);
System.out.print("Digite quantos números a operação terá: ");
b = in.nextInt();
for(int i = 0; i < b; i++) {
System.out.print("Digite o " + (i + 1) + "° número: ");
a[i] = in.nextDouble();
}
}
}
Exception in thread "main" java.lang.ArrayIndexOutOfBoundsException: 0
M
6 Respostas
1 like
Posta o stacktrace pra ver em q linha q da o erro.
Mas basicamente o erro sgnifica q vc está acessando aquela posição ZERO que no caso não existe.
a[0] não é uma boa prática acessar posições desta forma, estaticamente. Se mesmo assim o fizeres, GARANTA que a posição vai existir.
M
at com.arthurlmoreira.operators.Numbers.moreNumbers(Numbers.java:55)
Solucao aceita
1 like
Poisé, está chamando este método mas seu vetor “a” é de tamanho zero, ou seja posição zero não existe.
1 like
protected int b; // b não foi inicializado, então é zero
protected double a[] = new double[b]; // agora o array a foi inicializado com tamanho zero
a[0] = in.nextDouble(); // se a tem tamanho zero, não dá pra acessar nenhuma posição dele
M
Obrigado
M
Agradeço
Criado 30 de janeiro de 2019
Ultima resposta 1 de fev. de 2019
Respostas 6
Participantes 3
Alura O que é Python? — um guia completo para iniciar nessa linguagem de programação Acesse agora o guia sobre Python e inicie sua jornada nessa linguagem de programação: o que é e para que serve, sua sintaxe e como iniciar nela!
Casa do Codigo Back-end Java: Microsservicos, Spring Boot e Kubernetes Por Eduardo Felipe Zambom Santana — Casa do Codigo