Arry Erro

to escutando esse codigo de boas so que depois aparece uma messagem de erro

int atividade [][]=new int[5][3];
        for(int j=1;j<atividade.length;j++){
            for(int i=1;i<atividade.length;i++){
            if(i!=j){
                atividade[i][j]=0;
            }
            if(i==j){
                atividade[i][j]=3;
            }
        }
        }
        System.out.println("Resposta");
        for(int i=1;i<atividade.length;i++){
            for(int j=1;j<atividade.length;j++){
                System.out.print(atividade[i][j]+"\t");  
            }
            System.out.println("");
        }

Tela do Prompt

Exception in thread “main” java.lang.ArrayIndexOutOfBoundsException: 3
at meu.Escola.main(Escola.java:10)

Alguem pode ajudar

Dessa forma irá funcionar:

 int atividade[][] = new int[5][3];
 for (int j = 0; j < atividade.length; j++) {
	for (int i = 0; i < atividade[j].length; i++) {
		if (i != j) {
			atividade[j][i] = 0;
		}
		if (i == j) {
			atividade[j][i] = 3;
		}
	}
}
System.out.println("Resposta");
for (int i = 0; i < atividade.length; i++) {
	for (int j = 0; j < atividade[j].length; j++) {
		System.out.print(atividade[i][j] + "\t");
	}
	System.out.println("");
}

Analisa bem o que tem de diferente do meu para o seu e tenta entender. Qualquer dúvida questione.

esse erro acontece quando você tenta acessar um índice da array que não existe

1 curtida