Memahami Modulo lwn. Baki dalam Java
Di Java, pengendali modulo (%) mengira baki selepas membahagikan satu nombor dengan yang lain. Tidak seperti pengendali modulo Python, operasi modulo Java mengembalikan nilai negatif untuk input negatif. Ini boleh membawa kepada hasil yang tidak dijangka, seperti yang ditunjukkan semasa mengira -1 % 2 dalam kedua-dua Python dan Java.
Menyelesaikan Percanggahan
Untuk mencapai kelakuan yang sama seperti modulo Python operator di Java, anda boleh menggunakan teknik berikut:
Contoh Kod:
<code class="java">int i = (((-1 % 2) + 2) % 2);</code>
atau
<code class="java">int i = -1 % 2; if (i < 0) i += 2;</code>
Dengan menggunakan teknik ini, anda boleh memastikan bahawa operasi modulo dalam Java berkelakuan konsisten dengan pengendali modulo Python dan memberikan nilai baki positif yang dijangkakan.
Atas ialah kandungan terperinci Mengapa Operator Modulo Java Mengembalikan Keputusan Negatif untuk Input Negatif?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!