首頁  >  文章  >  Java  >  以下是一些標題選項,可以使用問題格式: * **為什麼Java中是-13 % 64而不是51? * **Java 模運算子和負數:如何獲得預期結果

以下是一些標題選項,可以使用問題格式: * **為什麼Java中是-13 % 64而不是51? * **Java 模運算子和負數:如何獲得預期結果

Mary-Kate Olsen
Mary-Kate Olsen原創
2024-10-25 12:17:30207瀏覽

Here are a few title options, playing with the question format:

* **Why is -13 % 64 not 51 in Java?**  (Simple and direct)
* **Java Modulus Operator and Negative Numbers: How to Get the Expected Result?** (More descriptive, highlights the challenge)
* **

Java 中負數的模計算

在 Java 中,模運算子 (%) 傳回兩個數相除後的餘數。然而,在處理負數時,結果可能不符合預期。

問題:

開發人員在使用負數進行模計算時遇到意外結果,特別是 -13 % 64。結果不是期望的 51,而是 -13。

解釋:

負數模數的定義因程式設計而異語言。在 Java 中,模運算子傳回的餘數與被除數(分子)具有相同的符號。因此,-13 % 64 的計算結果為 -13。

解:

要獲得所需的結果51,可以應用以下校正:

<code class="java">int r = x % n;
if (r > 0 && x < 0) {
    r -= n;
}</code>

此程式碼確保當除數為負時餘數為正。

或者,如果語言對負輸入返回負餘數,並且開發人員更喜歡正結果,則可以進行以下調整made:

<code class="java">int r = x % n;
if (r < 0) {
    r += n;
}</code>

此程式碼將負餘數轉換為正值。

以上是以下是一些標題選項,可以使用問題格式: * **為什麼Java中是-13 % 64而不是51? * **Java 模運算子和負數:如何獲得預期結果的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn