Numerieke functies voor ARM-sjablonen

Resource Manager biedt de volgende functies voor het werken met gehele getallen in uw ARM-sjabloon (Azure Resource Manager):

Tip

We raden Bicep aan omdat het dezelfde mogelijkheden biedt als ARM-sjablonen en de syntaxis eenvoudiger te gebruiken is. Zie numerieke functies voor meer informatie over het gebruik van intmin, en max in Bicep. Zie numerieke operatoren voor andere numerieke waarden.

add

add(operand1, operand2)

Retourneert de som van de twee opgegeven gehele getallen.

De add functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de + operator .

Parameters

Parameter Vereist Type Description
operand1 Ja int Het eerste nummer dat moet worden toegevoegd.
operand2 Ja int Tweede nummer om op tetellen.

Retourwaarde

Een geheel getal dat de som van de parameters bevat.

Voorbeeld

In het volgende voorbeeld worden twee parameters toegevoegd.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "first": {
      "type": "int",
      "defaultValue": 5,
      "metadata": {
        "description": "First integer to add"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Second integer to add"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "addResult": {
      "type": "int",
      "value": "[add(parameters('first'), parameters('second'))]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
addResult Int 8

copyIndex

copyIndex(loopName, offset)

Retourneert de index van een iteratielus.

Gebruik in Bicep iteratieve lussen.

Parameters

Parameter Vereist Type Description
loopName No tekenreeks De naam van de lus voor het ophalen van de iteratie.
offset No int Het getal dat moet worden toegevoegd aan de iteratiewaarde op basis van nul.

Opmerkingen

Deze functie wordt altijd gebruikt met een kopieerobject . Als er geen waarde is opgegeven voor offset, wordt de huidige iteratiewaarde geretourneerd. De iteratiewaarde begint bij nul.

Met de eigenschap loopName kunt u opgeven of copyIndex verwijst naar een resource-iteratie of eigenschaps-iteratie. Als er geen waarde is opgegeven voor loopName, wordt de huidige iteratie van het resourcetype gebruikt. Geef een waarde op voor loopName bij het herhalen van een eigenschap.

Zie voor meer informatie over het gebruik van kopiëren:

Voorbeeld

In het volgende voorbeeld ziet u een kopieerlus en de indexwaarde die is opgenomen in de naam.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "storageCount": {
      "type": "int",
      "defaultValue": 2
    },
    "location": {
      "type": "string",
      "defaultValue": "[resourceGroup().location]"
    }
  },
  "resources": [
    {
      "type": "Microsoft.Storage/storageAccounts",
      "apiVersion": "2022-09-01",
      "name": "[format('{0}storage{1}', range(0, parameters('storageCount'))[copyIndex()], uniqueString(resourceGroup().id))]",
      "location": "[parameters('location')]",
      "sku": {
        "name": "Standard_LRS"
      },
      "kind": "Storage",
      "properties": {},
      "copy": {
        "name": "storagecopy",
        "count": "[parameters('storageCount')]"
      }
    }
  ]
}

Retourwaarde

Een geheel getal dat de huidige index van de iteratie vertegenwoordigt.

div

div(operand1, operand2)

Retourneert de gehele verdeling van de twee opgegeven gehele getallen.

De div functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de / operator .

Parameters

Parameter Vereist Type Description
operand1 Ja int Het getal dat wordt gedeeld.
operand2 Ja int Het getal dat wordt gebruikt om te delen. Kan niet 0 zijn.

Retourwaarde

Een geheel getal dat de deling vertegenwoordigt.

Voorbeeld

In het volgende voorbeeld wordt een parameter gedeeld door een andere parameter.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "first": {
      "type": "int",
      "defaultValue": 8,
      "metadata": {
        "description": "Integer being divided"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Integer used to divide"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "divResult": {
      "type": "int",
      "value": "[div(parameters('first'), parameters('second'))]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
divResult Int 2

float

float(arg1)

Converteert de waarde naar een getal met drijvende komma. U gebruikt deze functie alleen wanneer u aangepaste parameters doorgeeft aan een toepassing, zoals een logische app.

De float functie wordt niet ondersteund in Bicep.

Parameters

Parameter Vereist Type Description
arg1 Yes tekenreeks of int De waarde die moet worden geconverteerd naar een getal met drijvende komma.

Retourwaarde

Een getal met drijvende komma.

Voorbeeld

In het volgende voorbeeld ziet u hoe u float gebruikt om parameters door te geven aan een logische app:

{
  "type": "Microsoft.Logic/workflows",
  "properties": {
    ...
    "parameters": {
      "custom1": {
        "value": "[float('3.0')]"
      },
      "custom2": {
        "value": "[float(3)]"
      },

int

int(valueToConvert)

Converteert de opgegeven waarde naar een geheel getal.

Gebruik in Bicep de functie int .

Parameters

Parameter Vereist Type Description
valueToConvert Yes tekenreeks of int De waarde die moet worden geconverteerd naar een geheel getal.

Retourwaarde

Een geheel getal van de geconverteerde waarde.

Voorbeeld

In de volgende voorbeeldsjabloon wordt de door de gebruiker opgegeven parameterwaarde geconverteerd naar een geheel getal.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "stringToConvert": {
      "type": "string",
      "defaultValue": "4"
    }
  },
  "resources": [
  ],
  "outputs": {
    "intResult": {
      "type": "int",
      "value": "[int(parameters('stringToConvert'))]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
intResult Int 4

max

max(arg1)

Retourneert de maximumwaarde van een matrix met gehele getallen of een door komma's gescheiden lijst met gehele getallen.

Gebruik in Bicep de functie max .

Parameters

Parameter Vereist Type Description
arg1 Yes matrix van gehele getallen of door komma's gescheiden lijst met gehele getallen De verzameling om de maximale waarde op te halen.

Retourwaarde

Een geheel getal dat de maximumwaarde van de verzameling vertegenwoordigt.

Voorbeeld

In het volgende voorbeeld ziet u hoe u max gebruikt met een matrix en een lijst met gehele getallen.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "arrayToTest": {
      "type": "array",
      "defaultValue": [ 0, 3, 2, 5, 4 ]
    }
  },
  "resources": [],
  "outputs": {
    "arrayOutput": {
      "type": "int",
      "value": "[max(parameters('arrayToTest'))]"
    },
    "intOutput": {
      "type": "int",
      "value": "[max(0,3,2,5,4)]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
arrayOutput Int 5
intOutput Int 5

min.

min(arg1)

Retourneert de minimumwaarde van een matrix met gehele getallen of een door komma's gescheiden lijst met gehele getallen.

Gebruik in Bicep de functie min .

Parameters

Parameter Vereist Type Description
arg1 Yes matrix van gehele getallen of door komma's gescheiden lijst met gehele getallen De verzameling om de minimumwaarde op te halen.

Retourwaarde

Een geheel getal dat de minimumwaarde uit de verzameling vertegenwoordigt.

Voorbeeld

In het volgende voorbeeld ziet u hoe u min gebruikt met een matrix en een lijst met gehele getallen.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "arrayToTest": {
      "type": "array",
      "defaultValue": [ 0, 3, 2, 5, 4 ]
    }
  },
  "resources": [],
  "outputs": {
    "arrayOutput": {
      "type": "int",
      "value": "[min(parameters('arrayToTest'))]"
    },
    "intOutput": {
      "type": "int",
      "value": "[min(0,3,2,5,4)]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
arrayOutput Int 0
intOutput Int 0

Mod

mod(operand1, operand2)

Retourneert de rest van de gehele deling met behulp van de twee opgegeven gehele getallen.

De mod functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator % .

Parameters

Parameter Vereist Type Description
operand1 Ja int Het getal dat wordt gedeeld.
operand2 Ja int Het getal dat wordt gebruikt om te delen, kan niet 0 zijn.

Retourwaarde

Een geheel getal dat de rest vertegenwoordigt.

Voorbeeld

In het volgende voorbeeld wordt de rest van het delen van een parameter door een andere parameter geretourneerd.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "first": {
      "type": "int",
      "defaultValue": 7,
      "metadata": {
        "description": "Integer being divided"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Integer used to divide"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "modResult": {
      "type": "int",
      "value": "[mod(parameters('first'), parameters('second'))]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
modResult Int 1

Mul

mul(operand1, operand2)

Retourneert de vermenigvuldiging van de twee opgegeven gehele getallen.

De mul functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator * .

Parameters

Parameter Vereist Type Description
operand1 Ja int Eerste getal dat moet worden vermenigvuldigd.
operand2 Ja int Tweede getal dat moet worden vermenigvuldigd.

Retourwaarde

Een geheel getal dat de vermenigvuldiging vertegenwoordigt.

Voorbeeld

In het volgende voorbeeld wordt één parameter vermenigvuldigd met een andere parameter.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "first": {
      "type": "int",
      "defaultValue": 5,
      "metadata": {
        "description": "First integer to multiply"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Second integer to multiply"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "mulResult": {
      "type": "int",
      "value": "[mul(mul(parameters('first'), parameters('second')), 3)]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
mulResult Int 45

sub

sub(operand1, operand2)

Retourneert de aftrekking van de twee opgegeven gehele getallen.

De sub functie wordt niet ondersteund in Bicep. Gebruik in plaats daarvan de operator - .

Parameters

Parameter Vereist Type Description
operand1 Ja int Het getal dat wordt afgetrokken van.
operand2 Ja int Het getal dat wordt afgetrokken.

Retourwaarde

Een geheel getal dat de aftrekking aangeeft.

Voorbeeld

In het volgende voorbeeld wordt een parameter afgetrokken van een andere parameter.

{
  "$schema": "https://schema.management.azure.com/schemas/2019-04-01/deploymentTemplate.json#",
  "contentVersion": "1.0.0.0",
  "parameters": {
    "first": {
      "type": "int",
      "defaultValue": 7,
      "metadata": {
        "description": "Integer subtracted from"
      }
    },
    "second": {
      "type": "int",
      "defaultValue": 3,
      "metadata": {
        "description": "Integer to subtract"
      }
    }
  },
  "resources": [
  ],
  "outputs": {
    "subResult": {
      "type": "int",
      "value": "[sub(parameters('first'), parameters('second'))]"
    }
  }
}

De uitvoer uit het voorgaande voorbeeld met de standaardwaarden is:

Naam Type Waarde
subResult Int 4

Volgende stappen