Archive for 30. Juli 2011|Daily archive page

Operatorpriorität

Die Priorität eines Operators hängt vom ersten Zeichen der Methode ab. Der Ausdruck 3+4*2 wird also nicht als (3+4)*2 geparst, sondern mathematisch korrekt als 3+(4*2).

Die genaue Reihenfolge kann in der Scala Reference (Section 6.12.3 Infix Operations) nachgeschlagen werden:

(all letters)
|
^
&
< >
= !
:
+ -
* / %
(all other special characters)

Aufsteigende Reihenfolge, erstes Element besitzt niedrigste Priorität.

Es ist wichtig, dass ihr darauf achtet nicht durch eventuelle „Methodenvertauschungen“ Probleme zu bekommen.

Der Ausdruck 3 add 4 mul 2 wird anders ausgewertet als 3+4*2.