2
respostas

[Dúvida] Valores de variaveis

int idade; idade = 37;

System.out.println(idade);

idade = 30 + 10;

System.out.println(idade);

idade = (7 * 5) + 2;

System.out.println(idade);

Nessa declaração fiquei com duvida pois foi declarado outros valores da variavel idade, o valor impresso em tela não deveria ser a ultima declaração? pois saiu em tela as 3 declarações de valores de idade, me baseio nos estudo que tivemos de fundamentos de logica da programação.

2 respostas

Olá amigo, tudo bem? O output 37, 40 e 37 está correto e vou te explicar como funciona:

int idade = 37;
// variavel idade declarada e inicializada, valor alocado na memória é 37

System.out.println(idade);
// o método acima vai imprimir a variável idade, o valor dela até o presente trecho de código é 37

idade = 30 + 10;
idade recebe novo valor, valor antigo não é mais acessado a partir desta linha de código, novo valor é 40

System.out.println(idade);
novamente o método vai imprimir a idade,ultimo valor alocado na memória passa a ser 40

idade = (7 * 5) + 2;
idade recebe novo valor, valor antigo não é mais acessado a partir desta linha de código, novo valor é o resultado da expressão dada, o 37.

System.out.println(idade);
novamente o método vai imprimir a idade, ultimo valor alocado na memória agora é 37

Só seria impresso a ultima declaração se tivéssemos apenas um Sysout após todas as declarações da variável idade. Espero que tenha ficado claro, qualquer coisa estou aqui, abraços e bora pra cima!

Olá à todos. Exatamente como explicado por Pedro: Há 3 'System.out.println("...")". Logo, há 3 saídas. E, como em determinados momentos a variável idade recebe (=) algo, seu valor passa a ser o correspondente ao lado direito de "=".