Precedenza di operatore nei linguaggi di
programmazione
|
 |
La precedenza di operatore decifra l'ordine in cui
i calcoli in un'espressione si presentano. Guardando gli esempi
3 + 4 * 6 di calcolo, la risposta potrebbe essere calcolata
aggiungendo 3 e 4, che dà 7 ed allora moltiplicando 7 per 6, dando la
risposta di 42. Tuttavia, potremmo anche moltiplicare 4 e 6
primi, che dà 24 ed allora aggiungiamo sui 3, dando una risposta di
27. L'operatore di moltiplicazione (*) realmente ha un'più alta
precedenza che l'operatore dell'aggiunta (+). questo significa che le
espressioni numerica 3 + 4 * 6 realmente dare le risposte 27 e non 42, eseguendo la moltiplicazione in
primo luogo ed allora l'aggiunta. Per specificare l'ordine in
cui i calcoli si presentano voi può usare semplicemente le parentesi.
Se desideriamo il calcolo dell'aggiunta essere eseguiti prima
della moltiplicazione, possiamo accludere il calcolo dell'aggiunta tra
parentesi (per esempio, (3 + 4) * 6, che ci daranno la risposta 42).
Quando in dubbio, è suggerito che usate le parentesi per
specificare l'ordine dei funzionamenti. È spesso meglio usare
comunque le parentesi per rendere il vostro codice più comprensibile.
La seguente tabella mostra una lista dell'operatore che
contiene gli operatori con un'più alta precedenza alla parte
superiore ed i thoses con una precedenza più bassa alla parte
inferiore. La tabella inoltre mostra il
associativity degli operatori raggruppati che sono di
precedenza uguale. Il associativity decifra l'ordine dei
responsabili di precedenza uguale. Per esempio, la divisione ha
un associativity "di sinistra", che potete considerare come essendo
lasciando alla destra. Ciò significa che l'espressione 24/4/2
sarebbe la stessa di (24/4)/2, essendo uguali 3 e non sarebbe gli
stessi dell'espressione 24/(4 /2), che fornisca risultato di 12.
Qui è la tabella di precedenza di operatore ed il associativity
dei responsabili di precedenza uguale.
| Gruppo Dell'Operatore |
Associativity |
| (), [ ],., postfix++, suffisso–– |
Di sinistra |
| + costituito da un solo elemento, – costituito da un solo elemento, ++prefix, ––prefisso, ~,! |
Destra |
| nuovo, (getto) |
Di sinistra |
| *, /, % |
Di sinistra |
| +, – |
Di sinistra |
| < <, > >, > > > |
Di sinistra |
| <, < =, >, > =, instanceof |
Di sinistra |
| ==,! = |
Di sinistra |
| & |
Di sinistra |
| ^ |
Di sinistra |
| | |
Di sinistra |
| && |
Di sinistra |
| || |
Di sinistra |
| ?: |
Di sinistra |
| =, * =,/=, % =, + =, –=, < < =, > > =, >>>=,
& =, |=, ^ = |
Destra |
Pensando di nuovo ai due esempi che abbiamo
guardato finora, possiamo in primo luogo vedere che l'operatore di
moltiplicazione sia più alto alto la tabella che l'operatore
dell'aggiunta, significante la ha un'più alta precedenza.
Possiamo inoltre vedere che l'operatore di divisione ha (a
sinistra alla destra) un associativity di sinistra, come
precedentemente abbiamo discusso.
ciò è un articolo aggiunto da Gabriela C. Perez
Diniego: Il nostro Web site non
è responsabile delle informazioni contenute da questo articolo.
Questo articolo in nessun modo riflette le viste, le opinioni, i
pensieri o la credenza del personale dell'indice degli articoli.
Avviso di traduzione: L'articolo
"precedenza di operatore nei linguaggi di programmazione" è stato
tradotto usando un servizio di traduzione automatizzato.
Chiediamo scusa francamente per tutti gli errori di traduzione
che hanno accaduto. Grazie per capire.
|