Dúvida em duas perguntas java

Olá Bom dia :slight_smile:
O meu professor enviou-nos exercícios para tentarmos resolver, mas estou com algumas dúvidas em 2 perguntas.

Pergunta 1:

Qual é o resultado da compilação e execução do método seguinte?

public void method() {
for(int i = 0; i < 3; i++) {
System.out.println(i) ;
}
System.out.println(i) ;
}

opções:
a. 0 b. 0 c. Erro de compilação d. Nenhum dos anteriores
1 1
2 2
2 3

Pergunta 2:
O código int a = 9/0; produzirá o seguinte resultado:
opções:
a. Erro de compilação
b. Erro de execução
c. Variável a fica com valor 0
d. Variável a fica com valor 9

Agradeço a ajuda

1.1 o method é iniciado e entra no for
1.2 dentro do for é declarado a variável i do tipo inteiro com valor 0
1.3 é testado se a variável i é menor que 3
1.4 Como é verdadeiro, entra e executa o println da variável i
1.5 i é incrementado em +1
1.6 O mesmo processo de 1.2 a 1.5 para os valores de i = 1 e 1 = 2.
1.7 valor i é igual a 3 e sai do for
1.8 é feito a tentativa de println do i, mas ela não existe fora do for.

Essa seria a execução, porém como o i não existe fora do for, dá erro de compilação.

  1. Erro de execução: Exception in thread “main” java.lang.ArithmeticException: / by zero
2 curtidas

Oi Ana, sei que o Rodrigo respondeu… mas tenta fazer executar vc mesma… são exemplos simples (sei que no início é complicado entender), mas se não se esforçar nestes simples, ficará mais difícil entender mais para frente…

obs.: Não estou sendo o "tiozão chato, mas é a realidade que passei, não fiz muito os simples sozinho, hoje apanho muito.

2 curtidas

Sim, eu concordo totalmente com isso, por esse motivo eu tentei dar uma explicação detalhada de como tudo é executado e não apenas as respostas, mas o melhor é sempre executar o código e entender aquilo que é retornado e porque foi retornado.

2 curtidas