Freigeben über


Effiziente Kombination von Operatoren

Aktualisiert: November 2007

Komplexe Ausdrücke können viele verschiedene Operatoren enthalten. Dies wird anhand des folgenden Beispiels veranschaulicht:

x = (45 * (y + z)) ^ (2 / 85) * 5 + z

Für die Erstellung komplexer Ausdrücke wie im vorhergehenden Beispiel müssen Sie mit den Regeln der Operatorrangfolge sehr gut vertraut sein. Weitere Informationen finden Sie unter Operatorrangfolge in Visual Basic.

Klammernausdrücke

Oftmals sollen Operationen in einer Reihenfolge ausgeführt werden, die von der Operatorrangfolge abweicht. Betrachten Sie das folgende Beispiel.

x = z * y + 4

Im vorhergehenden Beispiel wird z mit y multipliziert und anschließend das Ergebnis zu 4 addiert. Wenn Sie jedoch y und 4 addieren möchten, bevor Sie das Ergebnis mit z multiplizieren, können Sie die normale Operatorrangfolge mithilfe von Klammern überschreiben. Wenn Sie einen Ausdruck in Klammern einschließen, erzwingen Sie, dass dieser Ausdruck ungeachtet der Operatorrangfolge zuerst ausgewertet wird. Um im vorherigen Beispiel zu erzwingen, dass die Addition zuerst ausgeführt wird, können sie es wie im folgenden Beispiel ändern.

x = z * (y + 4)

Im vorangehenden Beispiel werden y und 4 addiert, und anschließend wird die Summe mit z multipliziert.

Geschachtelte Klammerausdrücke

Sie können Ausdrücke auf mehreren Ebenen von Klammern schachteln, um die Operatorrangfolge noch weiter zu überschreiben. Die Ausdrücke mit der tiefsten Schachtelung in Klammern werden zuerst ausgewertet, anschließend die Ausdrücke mit der nächsttieferen Schachtelung usw. bis zu den Ausdrücken mit der geringsten Schachtelungstiefe, und schließlich die Ausdrücke außerhalb der Klammern. Dies wird anhand des folgenden Beispiels veranschaulicht:

x = (z * 4) ^ (y * (z + 2))

Im vorangehenden Beispiel wird z + 2 zuerst ausgewertet, und anschließend werden die anderen Ausdrücke in Klammern ausgewertet. Potenzierung, die normalerweise Vorrang vor Addition oder Multiplikation hat, wird in diesem Beispiel zuletzt ausgewertet, da die anderen Ausdrücke in Klammern stehen.

Siehe auch

Aufgaben

Gewusst wie: Berechnen von numerischen Werten

Konzepte

Arithmetische Operatoren in Visual Basic

Vergleichsoperatoren in Visual Basic

Logische und bitweise Operatoren in Visual Basic

Boolesche Ausdrücke

Wertvergleiche

Referenz

Logische/Bitweise Operatoren

Operatorrangfolge in Visual Basic