Priorité d'opérateur dans des langages de programmation


  Share  
|


La priorité d'opérateur déchiffre l'ordre dans lequel les calculs dans une expression se produisent. Regardant l'exemple de calcul 3 + 4 * 6, la réponse pourrait être calculée en additionnant 3 et 4, qui donne 7, et puis en multipliant 7 par 6, donnant la réponse de 42. Cependant, nous pourrions également multiplier 4 et 6 premiers, qui donne 24, et puis nous ajoutons sur les 3, donnant une réponse de 27. L'opérateur de multiplication (*) a réellement une priorité plus élevée que l'opérateur d'addition (+). ceci veut dire que l'expression numérique 3 + 4 * 6 donnerait réellement la réponse 27 et non 42, d'abord et puis exécutant la multiplication l'addition. Afin d'indiquer l'ordre dans lequel les calculs se produisent vous peut simplement employer des parenthèses. Si nous voulons que le calcul d'addition soit exécuté avant la multiplication, nous pouvons enfermer le calcul d'addition entre parenthèses (par exemple, (3 + 4) * 6, qui nous donneront la réponse 42). Quand dans le doute, on lui recommande que vous employiez des parenthèses pour indiquer l'ordre des opérations. Il est souvent le meilleur pour employer des parenthèses de toute façon pour rendre votre code plus compréhensible.

La table suivante montre une liste d'opérateur contenant des opérateurs avec une priorité plus élevée au dessus et des thoses avec une priorité inférieure au fond. La table montre également l'associativity des opérateurs groupés qui sont de priorité égale. L'associativity déchiffre l'ordre des opérateurs de la priorité égale. Par exemple, la division a un associativity "gauche", qui vous pouvez considérer comme étant laissé à la droite. Ceci signifie que l'expression 24/4/2 serait identique que (24/4)/2, égalant 3, et ne serait pas identiques que l'expression 24/(4 /2), qui donne un résultat de 12. Voici la table de priorité d'opérateur et l'associativity des opérateurs de la priorité égale.

Groupe D'Opérateur Associativity
(), [ ],., postfix++, suffixe–– Gauche
+ unaire, – unaire, ++prefix, ––préfixe, ~, ! Droite
nouveau, (fonte) Gauche
*, /, % Gauche
+, – Gauche
< <, > >, > > > Gauche
<, < =, >, > =, instanceof Gauche
==, ! = Gauche
et Gauche
^ Gauche
| Gauche
&& Gauche
|| Gauche
? : Gauche
=, * =,/=, % =, + =, –=, < < =, > > =, >>>=, et =, |=, ^ = Droite

Pensant de nouveau aux deux exemples que nous avons regardé jusqu'ici, nous pouvons d'abord voir que l'opérateur de multiplication est plus haut haut la table que l'opérateur d'addition, la voulant dire a une priorité plus élevée. Nous pouvons également voir que l'opérateur de division a (à gauche vers la droite) un associativity gauche, comme nous avons précédemment discuté.

c'est un article supplémentaire par Gabriela C. Perez


Share  

© 2005-2010 E-articles.info All Rights Reserved - Terms and conditions