Diferença entre X++ e ++X em Java
Muitos programadores enfrentam problemas ao entender a diferença entre x++
e ++x
em Java. Então, vamos resumir a diferença entre essas duas expressões.
Prefixo vs Postfix
Prefix = ++x
Postfix = x++
Ambos são usados para incrementar o valor em um, mas de maneiras diferentes. Se a variável começar com ++
, é chamada de pré-incremento. Se vier depois da variável, é chamado de operador pós-incremento.
Processo para incremento em Java
No método pós-incremento, primeiro usamos o valor atual e, em seguida, aumentamos o valor em 1.
No método de pré-incremento, o valor é primeiro incrementado em 1 e depois usado na instrução Java.
Exemplo
int x = 3;
int a = x++; // a = 3, x = 4
int b = ++a // b = 4, a = 4
Na primeira linha, o valor x é 3, que os usuários atribuem. Na segunda linha, o método pós-incremento x é usado para dar valor a a. Assim, os primeiros 3 são atribuídos a a e, em seguida, incrementados em 1, e o valor x torna-se 4. Na terceira linha, b é atribuído com um valor pré-incremento de a. Isso aumentará um valor em 1 e aumentará um valor de 3 para 4. Portanto, os valores de a e b tornam-se 4.
Exemplo de Java:
import java.io.*;
class ABC {
public static void main(String[] args) {
// initialize i
int i = 0;
System.out.println("Post Increment");
System.out.println(i++);
int j = 0;
System.out.println("Pre Increment");
System.out.println(++j);
}
}
Resultado:
Post Increment
0
Pre Increment
1