Numerische Funktionen für ARM-Vorlagen

Resource Manager stellt die folgenden Funktionen für das Arbeiten mit Zahlen in Ihren ARM-Vorlagen (Azure Resource Manager) bereit:

Tipp

Wir empfehlen Bicep, weil es dieselben Funktionen wie ARM-Vorlagen bietet und die Syntax einfacher zu verwenden ist. Weitere Informationen zur Verwendung von int, min und max in Bicep finden Sie unter int Funktionen (numeric). Informationen zu anderen numerischen Werten finden Sie unter numerische Operatoren (numeric).

add

add(operand1, operand2)

Gibt die Summe der beiden angegebenen ganzen Zahlen zurück.

Die add-Funktion wird in Bicep nicht unterstützt. Verwenden Sie stattdessen den -Operator.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
operand1 Ja INT Erste zu addierende Zahl.
operand2 Ja INT Zweite zu addierende Zahl.

Rückgabewert

Eine ganze Zahl, die die Summe der Parameter enthält.

Beispiel

Im folgenden Beispiel werden zwei Parameter hinzugefügt.

{
  "$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'))]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
addResult Int 8

copyIndex

copyIndex(loopName, offset)

Gibt den Index einer Iterationsschleife zurück.

Verwenden Sie in Bicep iterative Schleifen.

Parameter

Parameter Erforderlich Typ Beschreibung
loopName Nein Zeichenfolge Der Name der Schleife zum Abrufen der Iteration
offset Nein INT Die Zahl, die dem nullbasierten (0) Iterationswert hinzugefügt werden soll.

Hinweise

Diese Funktion wird immer mit einem copy -Objekt verwendet. Wenn kein Wert für offset angegeben wird, wird der aktuelle Iterationswert zurückgegeben. Der Iterationswert beginnt bei 0 (null).

Mit der Eigenschaft loopName können Sie angeben, ob sich „copyIndex“ auf eine Ressourceniteration oder eine Eigenschafteniteration bezieht. Wenn kein Wert für loopName angegeben wird, wird die Iteration des aktuellen Ressourcentyps verwendet. Geben Sie einen Wert für loopName an, wenn eine Iteration für eine Eigenschaft ausgeführt wird.

Weitere Informationen zur Verwendung von Kopiervorgängen finden Sie unter:

Beispiel

Das folgende Beispiel enthält eine Kopierschleife und den Indexwert im Namen.

{
  "$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')]"
      }
    }
  ]
}

Rückgabewert

Eine ganze Zahl, die den aktuellen Index der Iteration darstellt.

div

div(operand1, operand2)

Gibt die Ganzzahldivision der beiden angegebenen ganzen Zahlen zurück.

Die div-Funktion wird in Bicep nicht unterstützt. Verwenden Sie stattdessen den -Operator.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
operand1 Ja INT Die zu teilende Zahl (Dividend).
operand2 Ja INT Die Zahl, durch die geteilt wird (Divisor). Darf nicht null (0) sein.

Rückgabewert

Eine ganze Zahl, die die Division darstellt.

Beispiel

Im folgenden Beispiel wird ein Parameter durch einen anderen Parameter dividiert.

{
  "$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'))]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name Typ Wert
divResult Int 2

float

float(arg1)

Konvertiert den Wert in eine Gleitkommazahl. Diese Funktion wird nur beim Übergeben von benutzerdefinierten Parametern an eine Anwendung (z. B. eine Logik-App) verwendet.

Die float-Funktion wird in Bicep nicht unterstützt.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
arg1 Ja Zeichenfolge oder ganze Zahl Der in eine Gleitkommazahl zu konvertierende Wert.

Rückgabewert

Eine Gleitkommazahl.

Beispiel

Das folgende Beispiel zeigt, wie „float“ zum Übergeben von Parametern an eine Logik-App verwendet wird:

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

INT

int(valueToConvert)

Konvertiert den angegebenen Wert in eine ganze Zahl (Integer).

Verwenden Sie in Bicep die int-Funktion.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
valueToConvert Ja Zeichenfolge oder ganze Zahl Der Wert, der in eine ganze Zahl (Integer) konvertiert werden soll.

Rückgabewert

Eine ganze Zahl des konvertierten Werts.

Beispiel

In der folgenden Beispielvorlage wird der vom Benutzer angegebene Parameterwert in eine ganze Zahl konvertiert.

{
  "$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'))]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
intResult Int 4

max

max(arg1)

Gibt den größten Wert aus einem Array mit ganzen Zahlen oder einer durch Trennzeichen getrennten Liste mit ganzen Zahlen zurück.

Verwenden Sie in Bicep die max-Funktion.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
arg1 Ja Array mit ganzen Zahlen oder durch Trennzeichen getrennte Liste mit ganzen Zahlen Die Auflistung, aus der der größte Wert abgerufen werden soll.

Rückgabewert

Eine ganze Zahl, die den größten Wert aus der Auflistung darstellt.

Beispiel

Das folgende Beispiel zeigt, wie man max mit einem Array und einer Liste von Ganzzahlen verwendet.

{
  "$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)]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
arrayOutput Int 5
intOutput Int 5

Min

min(arg1)

Gibt den kleinsten Wert aus einem Array mit ganzen Zahlen oder einer durch Trennzeichen getrennten Liste mit ganzen Zahlen zurück.

Verwenden Sie in Bicep die min-Funktion.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
arg1 Ja Array mit ganzen Zahlen oder durch Trennzeichen getrennte Liste mit ganzen Zahlen Die Auflistung, aus der der kleinste Wert abgerufen werden soll.

Rückgabewert

Eine ganze Zahl, die den kleinsten Wert aus der Auflistung darstellt.

Beispiel

Das folgende Beispiel zeigt, wie man min mit einem Array und einer Liste von Ganzzahlen verwendet.

{
  "$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)]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
arrayOutput Int 0
intOutput Int 0

mod

mod(operand1, operand2)

Gibt den Rest der Ganzzahldivision mit den beiden angegebenen ganzen Zahlen zurück.

Die mod-Funktion wird in Bicep nicht unterstützt. Verwenden Sie stattdessen den Operator %.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
operand1 Ja INT Die zu teilende Zahl (Dividend).
operand2 Ja INT Die Zahl, durch die dividiert wird (Divisor), darf nicht null (0) sein.

Rückgabewert

Eine ganze Zahl, die den Rest darstellt.

Beispiel

Im folgenden Beispiel wird der Restbetrag der Division von einem Parameter durch einen anderen Parameter zurückgegeben.

{
  "$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'))]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
modResult Int 1

mul

mul(operand1, operand2)

Gibt die Multiplikation der beiden angegebenen ganzen Zahlen zurück.

Die mul-Funktion wird in Bicep nicht unterstützt. Verwenden Sie stattdessen den Operator *.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
operand1 Ja INT Erste zu multiplizierende Zahl.
operand2 Ja INT Zweite zu multiplizierende Zahl.

Rückgabewert

Eine ganze Zahl, die die Multiplikation darstellt.

Beispiel

Im folgenden Beispiel wird ein Parameter mit einem anderen Parameter multipliziert.

{
  "$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)]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
mulResult Int 45

sub

sub(operand1, operand2)

Gibt die Differenz der beiden angegebenen ganzen Zahlen zurück.

Die sub-Funktion wird in Bicep nicht unterstützt. Verwenden Sie stattdessen den -Operator.

Parameter

Parameter Erforderlich Typ BESCHREIBUNG
operand1 Ja INT Zahl, von der subtrahiert wird.
operand2 Ja INT Zahl, die subtrahiert wird.

Rückgabewert

Eine ganze Zahl, die die Subtraktion darstellt.

Beispiel

Im folgenden Beispiel wird ein Parameter von einem anderen Parameter subtrahiert.

{
  "$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'))]"
    }
  }
}

Die Ausgabe aus dem vorherigen Beispiel mit den Standardwerten lautet:

Name type Wert
subResult Int 4

Nächste Schritte