Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
Mantıksal işleçler boole değerlerini değerlendirir, null olmayan değerler döndürür veya koşullu ifadeyi değerlendirir. Örnekleri çalıştırmak için Azure CLI veya Azure PowerShell kullanarak bir Bicep dosyası dağıtın.
| Operatör | Veri Akışı Adı |
|---|---|
&& |
And |
|| |
Or |
! |
Not |
?? |
Birleşmek |
? : |
Koşullu ifade |
Ve &
operand1 && operand2
Her iki değerin de doğru olup olmadığını belirler.
Işlenen
| Işlenen | Type | Açıklama |
|---|---|---|
operand1 |
boolean | Doğru olup olmadığını denetlemek için ilk değer. |
operand2 |
boolean | Doğru olup olmadığını denetlemek için ikinci değer. |
| Diğer işlenenler | boolean | Daha fazla işlenen eklenebilir. |
Dönüş değeri
True her iki değer de true olduğunda, aksi takdirde false döndürülür.
Örnek
Bir parametre değerleri kümesini ve bir ifade kümesini değerlendirir.
param operand1 bool = true
param operand2 bool = true
output andResultParm bool = operand1 && operand2
output andResultExp bool = 10 >= 10 && 5 > 2
Örnekten çıktı:
| Adı | Tür | Değer |
|---|---|---|
andResultParm |
boolean | true |
andResultExp |
boolean | true |
'foo' dil ifadesi özelliğinin Bicep nesnelerinde özel durum olmamasını önlemek için, aşağıdaki örnekte gösterildiği gibi And mantıksal işlecini kullanabilirsiniz:
param objectToTest object = {
one: 1
two: 2
three: 3
}
output bar bool = contains(objectToTest, 'four') && objectToTest.four == 4
Veya ||
operand1 || operand2
İki değerden birinin doğru olup olmadığını belirler.
Işlenen
| Işlenen | Type | Açıklama |
|---|---|---|
operand1 |
boolean | Doğru olup olmadığını denetlemek için ilk değer. |
operand2 |
boolean | Doğru olup olmadığını denetlemek için ikinci değer. |
| Diğer işlenenler | boolean | Daha fazla işlenen eklenebilir. |
Dönüş değeri
True iki değerden biri true olduğunda, aksi takdirde false döndürülür.
Örnek
Bir parametre değerleri kümesini ve bir ifade kümesini değerlendirir.
param operand1 bool = true
param operand2 bool = false
output orResultParm bool = operand1 || operand2
output orResultExp bool = 10 >= 10 || 5 < 2
Örnekten çıktı:
| Adı | Tür | Değer |
|---|---|---|
orResultParm |
boolean | true |
orResultExp |
boolean | true |
'x' dil ifadesi özellik dizisi dizininin sınır dışı özel durumu olmasını önlemek için, aşağıdaki örnekte gösterildiği gibi Or mantıksal işlecini kullanabilirsiniz:
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
Değil!
!boolValue
Boole değerini yok sayıyor.
Işlenen
| Işlenen | Type | Açıklama |
|---|---|---|
boolValue |
boolean | Olumsuzlanan Boole değeri. |
Dönüş değeri
İlk değeri olumsuzlar ve bir boole döndürür. İlk değer ise truefalse döndürülür.
Örnek
not işleci bir değeri olumsuzlar. Değerler ayraçlarla sarmalanabilir.
param initTrue bool = true
param initFalse bool = false
output startedTrue bool = !(initTrue)
output startedFalse bool = !initFalse
Örnekten çıktı:
| Adı | Tür | Değer |
|---|---|---|
startedTrue |
boolean | yanlış |
startedFalse |
boolean | true |
Birleşmek??
operand1 ?? operand2
İşlenenlerden ilk null olmayan değeri döndürür.
Işlenen
| Işlenen | Type | Açıklama |
|---|---|---|
operand1 |
dize, tamsayı, boole, nesne, dizi | için nullsınanacak değer. |
operand2 |
dize, tamsayı, boole, nesne, dizi | için nullsınanacak değer. |
| Diğer işlenenler | dize, tamsayı, boole, nesne, dizi | için nullsınanacak değer. |
Dönüş değeri
İlk null olmayan değeri döndürür. Boş dizeler, boş diziler ve boş nesneler değildir null ve boş> bir <değer döndürülür.
Örnek
Çıkış deyimleri null olmayan değerleri döndürür. Çıkış türü, karşılaştırmadaki türle eşleşmelidir veya bir hata oluşturulur.
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
Örnekten çıktı:
| Adı | Tür | Değer |
|---|---|---|
nonNullStr |
Dize | demoString |
nonNullInt |
int | 10 |
nonNullEmpty |
Dize | <empty> |
Koşullu ifade? :
condition ? true-value : false-value
Koşulu değerlendirir ve koşulun true veya false olup olmadığını bir değer döndürür.
Işlenen
| Işlenen | Type | Açıklama |
|---|---|---|
condition |
boolean | True veya false olarak değerlendirilecek koşul. |
true-value |
dize, tamsayı, boole, nesne, dizi | Koşul true olduğunda değer. |
false-value |
dize, tamsayı, boole, nesne, dizi | Koşul false olduğunda değer. |
Örnek
Bu örnek bir parametrenin başlangıcını değerlendirir ve koşulun true veya false olup olmadığını bir değer döndürür.
param initValue bool = true
output outValue string = initValue ? 'true value' : 'false value'
Örnekten çıktı:
| Adı | Tür | Değer |
|---|---|---|
outValue |
Dize | true değeri |
Sonraki adımlar
- Bicep dosyası oluşturmak için bkz . Hızlı Başlangıç: Visual Studio Code ile Bicep dosyaları oluşturma.
- Bicep türü hatalarını çözme hakkında bilgi için bkz . Bicep için herhangi bir işlev.
- Bicep ve JSON söz dizimlerini karşılaştırmak için bkz . Şablonlar için JSON ve Bicep karşılaştırması.
- Bicep işlevleri örnekleri için bkz . Bicep işlevleri.