Operasi Modulo dalam Java: Mengapa Nombor Positif dan Negatif Penting
Apabila melakukan operasi modulo di Java, fahami perbezaan halus antara modulus dan selebihnya adalah penting. Tidak seperti Python, pengendali modulo Java (%) mengira bakinya, bukan modulus.
Pertimbangkan contoh yang diberikan dalam soalan: -1 % 2 dalam Java mengembalikan -1, manakala dalam Python, ia mengembalikan 1. Ini adalah kerana Python mengira modulus, yang sentiasa menghasilkan nilai bukan negatif, manakala Java mengira baki, yang mengekalkan tanda operan pertama (-1 dalam kes ini).
Untuk mendapatkan kelakuan yang sama seperti Python, anda boleh menggunakan teknik berikut:
<code class="java">int i = (((-1 % 2) + 2) % 2)</code>
<code class="java">int i = -1 % 2; if (i < 0) i += 2;</code>
Ingat, teknik ini digunakan apabila anda perlu mengira modulus nombor negatif dalam Java. Walaupun pengendali dalam Python dan Java mungkin mempunyai simbol (%) yang sama, mereka berkelakuan berbeza, yang membawa kepada kemungkinan kekeliruan jika anda beralih antara bahasa.
Atas ialah kandungan terperinci Mengapa Adakah -1 % 2 Mengembalikan -1 dalam Java, tetapi 1 dalam Python?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!