Dela via


Bicep-jämförelseoperatorer

Jämförelseoperatorerna jämför värden och returnerar antingen true eller false. Om du vill köra exemplen använder du Azure CLI eller Azure PowerShell för att distribuera en Bicep-fil.

Operator Name
>= Större än eller lika med
> Större än
<= Mindre än eller lika med
< Mindre än
== Motsvarar
!= Inte lika med
=~ Lika skiftlägesokänsligt
!~ Inte lika skiftlägesokänsligt

Större än eller lika med >=

operand1 >= operand2

Utvärderar om det första värdet är större än eller lika med det andra värdet.

Operander

Operand Typ Beskrivning
operand1 heltal, sträng Första värdet i jämförelsen.
operand2 heltal, sträng Andra värdet i jämförelsen.

Returvärde

Om det första värdet är större än eller lika med det andra värdet true returneras. Annars false returneras.

Exempel

Ett par heltal och par med strängar jämförs.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'A'
param secondString string = 'A'

output intGtE bool = firstInt >= secondInt
output stringGtE bool = firstString >= secondString

Utdata från exemplet:

Namn Typ Värde
intGtE boolean true
stringGtE boolean true

Större än >

operand1 > operand2

Utvärderar om det första värdet är större än det andra värdet.

Operander

Operand Typ Beskrivning
operand1 heltal, sträng Första värdet i jämförelsen.
operand2 heltal, sträng Andra värdet i jämförelsen.

Returvärde

Om det första värdet är större än det andra värdet true returneras. Annars false returneras.

Exempel

Ett par heltal och par med strängar jämförs.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'bend'
param secondString string = 'band'

output intGt bool = firstInt > secondInt
output stringGt bool = firstString > secondString

Utdata från exemplet:

E i böj gör den första strängen större.

Namn Typ Värde
intGt boolean true
stringGt boolean true

Mindre än eller lika med <=

operand1 <= operand2

Utvärderar om det första värdet är mindre än eller lika med det andra värdet.

Operander

Operand Typ Beskrivning
operand1 heltal, sträng Första värdet i jämförelsen.
operand2 heltal, sträng Andra värdet i jämförelsen.

Returvärde

Om det första värdet är mindre än eller lika med det andra värdet true returneras. Annars false returneras.

Exempel

Ett par heltal och par med strängar jämförs.

param firstInt int = 5
param secondInt int = 10

param firstString string = 'demo'
param secondString string = 'demo'

output intLtE bool = firstInt <= secondInt
output stringLtE bool = firstString <= secondString

Utdata från exemplet:

Namn Typ Värde
intLtE boolean true
stringLtE boolean true

Mindre än <

operand1 < operand2

Utvärderar om det första värdet är mindre än det andra värdet.

Operander

Operand Typ Beskrivning
operand1 heltal, sträng Första värdet i jämförelsen.
operand2 heltal, sträng Andra värdet i jämförelsen.

Returvärde

Om det första värdet är mindre än det andra värdet true returneras. Annars false returneras.

Exempel

Ett par heltal och par med strängar jämförs.

param firstInt int = 5
param secondInt int = 10

param firstString string = 'demo'
param secondString string = 'Demo'

output intLt bool = firstInt < secondInt
output stringLt bool = firstString < secondString

Utdata från exemplet:

Strängen beror true på att gemener är mindre än versaler.

Namn Typ Värde
intLt boolean true
stringLt boolean true

Lika med ==

operand1 == operand2

Utvärderar om värdena är lika med. Jämförelsen är skiftlägeskänslig.

Operander

Operand Typ Beskrivning
operand1 sträng, heltal, boolesk, matris, objekt Första värdet i jämförelsen.
operand2 sträng, heltal, boolesk, matris, objekt Andra värdet i jämförelsen.

Returvärde

Om operanderna är lika true returneras. Om operanderna är olika false returneras.

Exempel

Par med heltal, strängar och booleska värden jämförs.

param firstInt int = 5
param secondInt int = 5

param firstString string = 'demo'
param secondString string = 'Demo'

param firstBool bool = true
param secondBool bool = true

output intEqual bool = firstInt == secondInt
output stringEqual bool = firstString == secondString
output boolEqual bool = firstBool == secondBool

Utdata från exemplet:

Namn Typ Värde Kommentar
intEqual boolean true
stringEqual boolean falskt Resultatet beror false på att jämförelsen är skiftlägeskänslig.
boolEqual boolean true

När du jämför matriser måste de två matriserna ha samma element och ordning. Matriserna behöver inte tilldelas till varandra.

var array1 = [
  1
  2
  3
]

var array2 = [
  1
  2
  3
]

var array3 = array2

var array4 = [
  3
  2
  1
]

output sameElements bool = array1 == array2 // returns true because arrays are defined with same elements
output assignArray bool = array2 == array3 // returns true because one array was defined as equal to the other array
output differentOrder bool = array4 == array1 // returns false because order of elements is different

Utdata från exemplet:

Namn Typ Värde
sameElements bool true
assignArray bool true
differentOrder bool falskt

När du jämför objekt måste egenskapsnamnen och värdena vara desamma. Egenskaperna behöver inte definieras i samma ordning.

var object1 = {
  prop1: 'val1'
  prop2: 'val2'
}

var object2 = {
  prop1: 'val1'
  prop2: 'val2'
}

var object3 = {
  prop2: 'val2'
  prop1: 'val1'
}

var object4 = object3

var object5 = {
  prop1: 'valX'
  prop2: 'valY'
}

output sameObjects bool = object1 == object2 // returns true because both objects defined with same properties
output differentPropertyOrder bool = object3 == object2 // returns true because both objects have same properties even though order is different
output assignObject bool = object4 == object1 // returns true because one object was defined as equal to the other object
output differentValues bool = object5 == object1 // returns false because values are different

Utdata från exemplet:

Namn Typ Värde
sameObjects bool true
differentPropertyOrder bool true
assignObject bool true
differentValues bool falskt

Inte lika med !=

operand1 != operand2

Utvärderar om två värden inte är lika med.

Operander

Operand Typ Beskrivning
operand1 sträng, heltal, boolesk, matris, objekt Första värdet i jämförelsen.
operand2 sträng, heltal, boolesk, matris, objekt Andra värdet i jämförelsen.

Returvärde

Om operanderna inte är lika true returneras. Om operanderna är lika false returneras.

Exempel

Par med heltal, strängar och booleska värden jämförs.

param firstInt int = 10
param secondInt int = 5

param firstString string = 'demo'
param secondString string = 'test'

param firstBool bool = false
param secondBool bool = true

output intNotEqual bool = firstInt != secondInt
output stringNotEqual bool = firstString != secondString
output boolNotEqual bool = firstBool != secondBool

Utdata från exemplet:

Namn Typ Värde
intNotEqual boolean true
stringNotEqual boolean true
boolNotEqual boolean true

För matriser och objekt, se exempel i lika med.

Lika skiftlägesokänsligt =~

operand1 =~ operand2

Ignorerar skiftläge för att avgöra om de två värdena är lika med.

Operander

Operand Typ Description
operand1 sträng Första strängen i jämförelsen.
operand2 sträng Andra strängen i jämförelsen.

Returvärde

Om strängarna är lika true returneras. Annars false returneras.

Exempel

Jämför strängar som använder gemener.

param firstString string = 'demo'
param secondString string = 'DEMO'

param thirdString string = 'demo'
param fourthString string = 'TEST'

output strEqual1 bool = firstString =~ secondString
output strEqual2 bool = thirdString =~ fourthString

Utdata från exemplet:

Namn Typ Värde
strEqual1 boolean true
strEqual2 boolean falskt

Inte lika skiftlägesokänsligt !~

operand1 !~ operand2

Ignorerar skiftläge för att avgöra om de två värdena inte är lika med.

Operander

Operand Typ Description
operand1 sträng Första strängen i jämförelsen.
operand2 sträng Andra strängen i jämförelsen.

Returvärde

Om strängarna inte är lika true med returneras. Annars false returneras.

Exempel

Jämför strängar som använder gemener.

param firstString string = 'demo'
param secondString string = 'TEST'

param thirdString string = 'demo'
param fourthString string = 'DeMo'

output strNotEqual1 bool = firstString !~ secondString
output strEqual2 bool = thirdString !~ fourthString

Utdata från exemplet:

Namn Typ Värde
strNotEqual1 boolean true
strNotEqual2 boolean falskt

Nästa steg