Logische Bicep-Operatoren
Die logischen Operatoren werten boolesche Werte aus, geben Werte ungleich NULL zurück oder werten einen bedingten Ausdruck aus. Verwenden Sie zum Ausführen der Beispiele die Azure-Befehlszeilenschnittstelle (Azure CLI) oder Azure PowerShell, um eine Bicep-Datei bereitzustellen.
Operator | Name |
---|---|
&& |
Und |
|| |
Oder |
! |
Not |
?? |
Zusammenfügen |
? : |
Bedingter Ausdruck |
Und &&
operand1 && operand2
Ermittelt, ob beide Werte wahr (TRUE) sind.
Operanden
Operand | type | Beschreibung |
---|---|---|
operand1 |
boolean | Der erste Wert, für den überprüft werden soll, ob er wahr ist. |
operand2 |
boolean | Der zweite Wert, für den überprüft werden soll, ob er wahr ist. |
Weitere Operanden | boolean | Es können weitere Operanden eingeschlossen werden. |
Rückgabewert
True
, wenn beide Werte wahr sind, andernfalls wird false
zurückgegeben.
Beispiel
Wertet einen Satz von Parameterwerten und einen Satz von Ausdrücken aus.
param operand1 bool = true
param operand2 bool = true
output andResultParm bool = operand1 && operand2
output andResultExp bool = 10 >= 10 && 5 > 2
Ausgabe des Beispiels:
Name | type | Wert |
---|---|---|
andResultParm |
boolean | true |
andResultExp |
boolean | true |
Um die Ausnahme Die Sprachausdruckseigenschaft „foo“ ist nicht vorhanden bei Bicep-Objekten zu vermeiden, können Sie den logischen Operator And verwenden, wie im folgenden Beispiel gezeigt:
param objectToTest object = {
one: 1
two: 2
three: 3
}
output bar bool = contains(objectToTest, 'four') && objectToTest.four == 4
Oder ||
operand1 || operand2
Ermittelt, ob einer der beiden Werte wahr (TRUE) ist.
Operanden
Operand | type | Beschreibung |
---|---|---|
operand1 |
boolean | Der erste Wert, für den überprüft werden soll, ob er wahr ist. |
operand2 |
boolean | Der zweite Wert, für den überprüft werden soll, ob er wahr ist. |
Weitere Operanden | boolean | Es können weitere Operanden eingeschlossen werden. |
Rückgabewert
True
, wenn einer der Werte wahr ist, andernfalls wird false
zurückgegeben.
Beispiel
Wertet einen Satz von Parameterwerten und einen Satz von Ausdrücken aus.
param operand1 bool = true
param operand2 bool = false
output orResultParm bool = operand1 || operand2
output orResultExp bool = 10 >= 10 || 5 < 2
Ausgabe des Beispiels:
Name | type | Wert |
---|---|---|
orResultParm |
boolean | true |
orResultExp |
boolean | true |
Um die Ausnahme Der Arrayindex 'x' der Sprachausdruckseigenschaft liegt außerhalb des zulässigen Bereichs zu vermeiden, können Sie den logischen Operator Or verwenden, wie im folgenden Beispiel gezeigt:
param emptyArray array = []
param numberArray array = [1, 2, 3]
output foo bool = empty(emptyArray) || emptyArray[0] == 'bar'
output bar bool = length(numberArray) >= 3 || numberArray[3] == 4
Nicht !
!boolValue
Negiert einen booleschen Wert.
Operand
Operand | type | Beschreibung |
---|---|---|
boolValue |
boolean | Boolescher Wert, der negiert wird. |
Rückgabewert
Negiert den Anfangswert und gibt einen booleschen Wert zurück. Wenn der Anfangswert true
ist, wird false
zurückgegeben.
Beispiel
Der not
-Operator negiert einen Wert. Die Werte können in Klammern eingeschlossen werden.
param initTrue bool = true
param initFalse bool = false
output startedTrue bool = !(initTrue)
output startedFalse bool = !initFalse
Ausgabe des Beispiels:
Name | type | Wert |
---|---|---|
startedTrue |
boolean | false |
startedFalse |
boolean | true |
Zusammenfügen ??
operand1 ?? operand2
Gibt den ersten Wert der Operanden zurück, der ungleich NULL ist.
Operanden
Operand | type | BESCHREIBUNG |
---|---|---|
operand1 |
Zeichenfolge, ganze Zahl, boolescher Wert, Objekt, Array | Der Wert, für den getestet werden soll, ob er null ist. |
operand2 |
Zeichenfolge, ganze Zahl, boolescher Wert, Objekt, Array | Der Wert, für den getestet werden soll, ob er null ist. |
Weitere Operanden | Zeichenfolge, ganze Zahl, boolescher Wert, Objekt, Array | Der Wert, für den getestet werden soll, ob er null ist. |
Rückgabewert
Gibt den ersten Wert zurück, der ungleich NULL ist. Für leere Zeichenfolgen, Arrays und Objekte wird der Wert <empty> zurückgegeben, da sie nicht null
sind.
Beispiel
Die Ausgabeanweisungen geben die Werte zurück, die ungleich NULL sind. Der Ausgabetyp muss mit dem Typ im Vergleich übereinstimmen. Andernfalls wird ein Fehler generiert.
param myObject object = {
isnull1: null
isnull2: null
string: 'demoString'
emptystr: ''
integer: 10
}
output nonNullStr string = myObject.isnull1 ?? myObject.string ?? myObject.isnull2
output nonNullInt int = myObject.isnull1 ?? myObject.integer ?? myObject.isnull2
output nonNullEmpty string = myObject.isnull1 ?? myObject.emptystr ?? myObject.string ?? myObject.isnull2
Ausgabe des Beispiels:
Name | type | Wert |
---|---|---|
nonNullStr |
Zeichenfolge | demoString |
nonNullInt |
INT | 10 |
nonNullEmpty |
Zeichenfolge | <empty> |
Bedingter Ausdruck ? :
condition ? true-value : false-value
Wertet eine Bedingung aus und gibt einen Wert zurück, der angibt, ob die Bedingung wahr (TRUE) oder nicht wahr (FALSE) ist.
Operanden
Operand | type | Beschreibung |
---|---|---|
condition |
boolean | Bedingung, die als wahr oder falsch ausgewertet werden soll. |
true-value |
Zeichenfolge, ganze Zahl, boolescher Wert, Objekt, Array | Wert, wenn die Bedingung wahr ist. |
false-value |
Zeichenfolge, ganze Zahl, boolescher Wert, Objekt, Array | Wert, wenn die Bedingung nicht wahr ist. |
Beispiel
In diesem Beispiel wird der Anfangswert eines Parameters ausgewertet und ein Wert zurückgegeben, der angibt, ob die Bedingung wahr oder nicht wahr ist.
param initValue bool = true
output outValue string = initValue ? 'true value' : 'false value'
Ausgabe des Beispiels:
Name | type | Wert |
---|---|---|
outValue |
Zeichenfolge | true value |
Nächste Schritte
- Informationen zum Erstellen einer Bicep-Datei finden Sie unter Schnellstart: Erstellen von Bicep-Dateien mit Visual Studio Code.
- Informationen zum Beheben von Bicep-Typfehlern finden Sie unter any-Funktion für Bicep.
- Einen Vergleich der Syntax für Bicep und JSON finden Sie unter Vergleichen von JSON mit Bicep für Vorlagen.
- Beispiele zu Bicep-Funktionen finden Sie unter Bicep-Funktionen.