In Java beschreibt der %-Operator den Rest bei der Ganzzahldivision. Für positive Zahlen verhält sich der %-Operator genauso wie der aus der Mathematik bekannte mod-Operator.
Beispiel: 7 mod 5 = 2, 7 % 5 = 2
Unterschiede zwischen den beiden Operatoren ergeben sich bei negativen Zahlen. Der mod-Operator berechnet eine Restklasse.
Die möglichen Restklassen von n mod m
sind 0 … m-1
.
Beispiel: -7 mod 5 = 3
Der %-Operator in Java berechnet den Rest bei der Ganzzahldivision.
Beispiel: -7 % 5 = -2
Die mod-Operation kann in Java wie folgt implementiert werden:
static int mod(int n, int m) { int r = n % m; if (r < 0) { r += m; } return r; }