Frage zu den Prioritaeten von Operatoren
-
Hi,
kann mir jemand sagen, weshalb der postinkrement Oprerator eine hoehere Prioritaet
hat als der preinkrement Operator. Muesste dies denn nicht genau anders herum sein?Seht mal hier http://java.sun.com/docs/books/tutorial/java/nutsandbolts/expressions.html
Vielen Dank
-
Bei der Bildung von Termen mittels den Postfix oder unären Operatoren spielt das keine Rolle, da du einen Ausdruck wie --x++ eh nicht bilden kannst (übrigens wäre das sowieso sinnfrei). Auch umgekehrt sehe ich auf Anhieb keinen Unterschied.
-
Das dient einfach der Vereinfachung der Syntax. Wie du in der Tabelle siehst, ist Postfix-++ in der gleichen Kategorie wie . und []. Würde man die Prioritäten jetzt vertauschen, würde ++myArray[0] das gleiche wie (++myArray)[0] bedeuten, was offensichtlich nicht sehr sinnvoll ist. Das gleiche gilt für ++myObj.field oder auch !anotherObj.isValid().