Maison  >  Article  >  Java  >  Voici quelques options de titre, en gardant à l'esprit le format de la question et en les alignant sur le contenu de l'article : **Option 1 (Focus sur l'écart) :** * **Pourquoi l'opérateur de module de Java renvoie-t-il Nega

Voici quelques options de titre, en gardant à l'esprit le format de la question et en les alignant sur le contenu de l'article : **Option 1 (Focus sur l'écart) :** * **Pourquoi l'opérateur de module de Java renvoie-t-il Nega

Linda Hamilton
Linda Hamiltonoriginal
2024-10-26 07:03:02625parcourir

Here are a few title options, keeping in mind the question format and aligning with the article's content:

**Option 1 (Focus on the discrepancy):**

* **Why Does Java's Modulus Operator Return Negative Values for Negative Numbers?**

**Option 2 (Emphas

Comprendre les calculs de module de Java avec des nombres négatifs

Lors de l'exécution de calculs de module avec des nombres négatifs en Java, les utilisateurs peuvent rencontrer des résultats inattendus. Par exemple, -13 % 64 donne -13 au lieu des 51 prévus.

Cet écart provient des définitions différentes de l'opérateur de module pour les nombres négatifs utilisés dans les langages de programmation. Java adopte une définition qui renvoie l'opérande négatif si le reste est négatif. Cela correspond à la définition mathématique de l'opérateur de module pour les nombres négatifs.

Cependant, certains utilisateurs préfèrent une définition alternative qui renvoie un reste positif quel que soit le signe de l'opérande. Pour obtenir ce comportement souhaité en Java, un simple extrait de code peut être utilisé :

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

Dans ce code, la variable r contient initialement le résultat de x % n. Si r est positif alors que x est négatif, cela indique que le calcul du module d'origine a abouti à un nombre négatif. Le code soustrait ensuite n de r pour décaler le reste du côté positif.

À l'inverse, si un langage renvoie des restes négatifs et que le résultat souhaité est un nombre positif, l'extrait de code suivant peut être utilisé :

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

Ce code vérifie si r est négatif et y ajoute n en conséquence, garantissant un reste positif.

Comprendre ces différentes définitions et fournir la modification de code appropriée permet aux programmeurs d'obtenir les résultats de module souhaités avec nombres négatifs en Java.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn