Ich habe festgestellt, dass der Modulus-Operator in Python und Java unterschiedlich implementiert ist.
Zum Beispiel in Python:
>>> print -300 % 800
>>> 500
In Java hingegen:
System.out.println(-300 % 800);
-300
Das hat mich überrascht, da ich dachte, dass etwas so Grundlegendes wie der Modulus allgemein auf die gleiche Weise interpretiert wird. Ich bin ein Fan der Python-Interpretation (die, wie ich annehme, von C entlehnt ist), obwohl ich die Logik hinter der Java-Implementierung verstehe.
Welche bevorzugen Sie normalerweise? Gibt es einen bestimmten Grund für die unterschiedlichen Interpretationen? Ich habe nicht die Absicht, einen Sprachenkrieg anzuzetteln, ich bin nur neugierig.