Maison > Java > javaDidacticiel > Opérateurs bit à bit et booléens : quelle est la différence entre `&` et `&&` et `|` et `||` ?

Opérateurs bit à bit et booléens : quelle est la différence entre `&` et `&&` et `|` et `||` ?

DDD
Libérer: 2024-11-18 07:22:02
original
462 Les gens l'ont consulté

Bitwise vs. Boolean Operators: What's the Difference Between `&` vs. `&&` and `|` vs. `||`?

Comprendre les opérateurs bit à bit et booléens : & contre && et | vs ||

En programmation, les symboles & et | représentent les opérateurs au niveau du bit, tandis que && et || représentent des opérateurs logiques booléens. Bien que ceux-ci semblent similaires, il existe des différences cruciales dans leur fonctionnement.

Opérateurs au niveau du bit : && et |

Les opérateurs au niveau du bit effectuent des opérations sur des bits individuels dans les nombres binaires. Par exemple :

int a = 6; // Binary: 110
int b = 4; // Binary: 100

int c = a & b; // Bitwise AND
int d = a | b; // Bitwise OR
Copier après la connexion

Dans ce cas, les valeurs obtenues sont :

  • c = 4 (binaire : 100)
  • d = 6 (binaire : 110)

Lors de l'exécution d'un ET au niveau du bit, chaque position de bit dans les opérandes est comparée. Si les deux bits correspondants sont à 1, le bit de résultat dans la position correspondante est à 1 ; sinon, il vaut 0. Inversement, dans un OU bit à bit, le bit résultat est 1 si au moins un bit correspondant dans les opérandes est 1 ; sinon, c'est 0.

Opérateurs logiques booléens : && et ||

Les opérateurs logiques booléens fonctionnent avec des valeurs booléennes (vrai ou faux). Ils suivent des règles similaires à celles des opérateurs au niveau du bit, mais :

  • && (AND) renvoie vrai uniquement si les deux opérandes sont vrais.
  • || (OR) renvoie vrai si au moins un opérande est vrai.

Contrairement aux opérateurs au niveau du bit, les opérateurs logiques booléens court-circuitent, ce qui signifie qu'ils n'évaluent pas tous les opérandes si le résultat peut être déterminé plus tôt. Cela empêche la génération d'exceptions lors de l'évaluation de valeurs nulles.

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!

source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal