Operador Módulo
Os maiores operadores aritméticos incluem adição (+), subtração (-), multiplicação (*), divisão (/) e módulo (%). Estamos familiarizados com as primeiras quatro operações aritméticas. Então, vamos explicar o operador de módulo.
O operador módulo: Quando dividimos um inteiro com outro inteiro no divisor, nós conseguimos dois valores, um quociente inteiro e um restante inteiro. A divisão da operação retorna o quociente, a operação do módulo retorna um restante.
Divisão de quociente inteiro = dividendo / divisor
Restante = dividendo % divisor
4 = 100 / 22
12 = 100 % 22
Nós podemos ver que o restante menor é 0, o restante maior é (divisor – 1). No projeto Adivinha o Número, nós precisamos de um inteiro no intervalo de (min, max), onde min = 1 e max = 100.
Nós derivamos uma fórmula para utilizar um gerador de número aleatório Math.random(). Baseado na operação módulo, nós temos outra abordagem para encontrar um número inteiro no intervalo de (min, max).
O intervalo (min, max) é equivalente a [(min – min) + min, (max – min) + min] ou [(0 + min), (max – min) + min]. Chamamos um gerador de números aleatórios para conseguir um número aleatório com qualquer valor de x.
Então aplique a computação ((x mod (max – min + 1)) + min) para encontrar o valor porque a computação (x mod (max – min + 1)) o menor resto será 0 e o maior resto (max – min) e então ((x mod(max – min +1)) + min) irá dar o intervalo de [min, (max -min) + min], é o intervalo requerido de [min, max] ([1, 100]).
Random ran = new java.util.Random();
int x = Math.abs(ran.nextInt());
int giveInt = x % (max – min + 1) + min;
Operadores de Incremento e Decremento
O operador ++ e –: Java fornece operadores aritméticos “++” e “- -”. A declaração “day++” é equivalente a “day = day + 1”. A declaração “day- -” é equivalente a “day = day – 1”.
Contudo, nós precisamos ter uma clara ideia sobre diferenças entre “day++” e “++day” como também “day- -“ e “ – -day”. O “day++” significa que o valor atual de “day” é utilizado primeiro e depois adicionado + 1. O “++day” significa que o valor 1 é adicionado ao day antes de ser utilizado.
int day = 2;
System.out.println(“day = “ + day++);
System.out.println(“day =” + ++day); No primeiro println() o valor apresentado será 2, e então o valor de dia é somado +1 então o novo valor será 3. O segundo println(), primeiro adicionar + 1 e assim o valor apresentado será 4.
Fonte: Learning Java with Games
Deixe um comentário