Fazendo conta em java

2 + 6 – 3 / 7 x 9 dá 8, mas por que?

Existe uma coisa chamada de “ordem de precedência” ou “precedência de operadores” que se você pesquisar à respeito vai perceber que há uma ordem em que o cálculo é realizado, não é exclusividade do Java este comportamento, isso é uma regra matemática.

Então segui isso e nada de dar 8.

Vc tá achando estranho que não deu um número com virgula?

Se for isso, é porque, em Java, quando vc divide um número inteiro por outro número inteiro, o resultado é um número inteiro também.

Então, 3 / 7 vai dar 0.

System.out.println(3 / 7);

A menos que vc faça um casting.

System.out.println((double) 3 / 7);

Ou que um dos operandos seja float ou double.

System.out.println(3f / 7); // 3 é float
// ou
System.out.println(3.0 / 7); // 3 é double
2 curtidas

A então é por causa de 2 + 6 que é 8 e 0,0476190476190476 não conta?

Isto mesmo.

3/7*9 é zero.

Então 2+6-0 = 8.

1 curtida