Java 中的模運算:為什麼正數和負數很重要
在Java 中執行模運算時,了解模數和負數之間的細微差別剩下的部分至關重要。與 Python 不同,Java 的模運算子 (%) 計算餘數,而不是模數。
考慮問題中提供的範例:Java 中的 -1 % 2 傳回 -1,而在 Python 中,它會傳回 1。是因為Python 計算模數,它總是產生一個非負值,而Java 計算餘數,它保留第一個操作數的符號(在此為-1)
要獲得與Python 相同的行為,您可以採用以下技術:
<code class="java">int i = (((-1 % 2) + 2) % 2)</code>
<code class="java">int i = -1 % 2; if (i < 0) i += 2;</code>
請記住,只要您需要計算Java 中的負數。雖然 Python 和 Java 中的運算子可能具有相同的符號 (%),但它們的行為不同,如果您在語言之間轉換,則會導致潛在的混亂。
以上是為什麼 -1 % 2 在 Java 中返回 -1,而在 Python 中返回 1?的詳細內容。更多資訊請關注PHP中文網其他相關文章!