Udostępnij przez


Funkcje liczbowe dla szablonów usługi ARM

Usługa Resource Manager udostępnia następujące funkcje do pracy z liczbami całkowitymi w szablonie usługi Azure Resource Manager (szablon usługi ARM):

Wskazówka

Bicep jest zalecany, ponieważ oferuje te same możliwości co szablony usługi ARM, a składnia jest łatwiejsza w użyciu. Aby dowiedzieć się więcej na temat używania funkcji int, mini max w Bicep, zobacz numeric funkcje. Aby uzyskać informacje o innych wartościach liczbowych, zobacz operatory liczbowe .

dodawać

add(operand1, operand2)

Zwraca sumę dwóch podanych liczb całkowitych.

Funkcja nie jest obsługiwana add w Bicep. + Zamiast tego użyj operatora .

Parametry

Parameter Required Typ Opis
operand1 Tak int (integer) Pierwsza liczba do dodania.
operand2 Tak int (integer) Druga liczba do dodania.

Wartość zwracana

Liczba całkowita zawierająca sumę parametrów.

Przykład

Poniższy przykład dodaje dwa parametry:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
addResult Int 8

copyIndex

copyIndex(loopName, offset)

Zwraca indeks pętli iteracji.

W Bicep użyj pętli iteracyjnych.

Parametry

Parameter Required Typ Opis
loopName Nie. ciąg Nazwa pętli pobierania iteracji.
przesunąć Nie. int (integer) Liczba, która ma zostać dodana do wartości iteracji opartej na zera.

Uwagi

Ta funkcja jest zawsze używana z obiektem kopiowania . Jeśli nie podano wartości przesunięcia, zwracana jest bieżąca wartość iteracji. Wartość iteracji rozpoczyna się od zera.

Właściwość loopName umożliwia określenie, czy copyIndex odnosi się do iteracji zasobów lub iteracji właściwości. Jeśli dla parametru loopName nie podano żadnej wartości, używana jest iteracja bieżącego typu zasobu. Podaj wartość parametru loopName podczas iteracji właściwości.

Aby uzyskać więcej informacji na temat korzystania z kopiowania, zobacz:

Przykład

W poniższym przykładzie przedstawiono pętlę kopiowania i wartość indeksu uwzględniona w nazwie:

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

Wartość zwracana

Liczba całkowita reprezentująca bieżący indeks iteracji.

div

div(operand1, operand2)

Zwraca podział liczb całkowitych dwóch podanych liczb całkowitych.

Funkcja nie jest obsługiwana div w Bicep. / Zamiast tego użyj operatora .

Parametry

Parameter Required Typ Opis
operand1 Tak int (integer) Liczba jest podzielona.
operand2 Tak int (integer) Liczba używana do dzielenia. Nie można mieć 0.

Wartość zwracana

Liczba całkowita reprezentująca podział.

Przykład

Poniższy przykład dzieli jeden parametr przez inny:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
divResult Int 2

float

float(arg1)

Konwertuje wartość na liczbę zmiennoprzecinkową. Ta funkcja jest używana tylko podczas przekazywania parametrów niestandardowych do aplikacji, takiej jak aplikacja logiki.

Funkcja nie jest obsługiwana float w Bicep.

Parametry

Parameter Required Typ Opis
arg1 powiedział: Tak ciąg lub int Wartość, która ma być konwertowana na liczbę zmiennoprzecinkową.

Wartość zwracana

Liczba zmiennoprzecinkowa.

Przykład

W poniższym przykładzie pokazano, jak używać zmiennoprzecinkowych do przekazywania parametrów do aplikacji logiki:

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

int (integer)

int(valueToConvert)

Konwertuje określoną wartość na liczbę całkowitą.

W Bicep użyj int funkcji .

Parametry

Parameter Required Typ Opis
valueToConvert Tak ciąg lub int Wartość, która ma być konwertowana na liczbę całkowitą.

Wartość zwracana

Liczba całkowita przekonwertowanej wartości.

Przykład

Poniższy przykładowy szablon konwertuje wartość parametru dostarczonego przez użytkownika na liczbę całkowitą:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
intResult Int 4

maks

max(arg1)

Zwraca wartość maksymalną z tablicy liczb całkowitych lub rozdzielanej przecinkami listy liczb całkowitych.

W Bicep użyj max funkcji .

Parametry

Parameter Required Typ Opis
arg1 powiedział: Tak tablica liczb całkowitych lub rozdzielona przecinkami lista liczb całkowitych Kolekcja, aby uzyskać maksymalną wartość.

Wartość zwracana

Liczba całkowita reprezentująca maksymalną wartość z kolekcji.

Przykład

W poniższym przykładzie pokazano, jak używać z max tablicą i listą liczb całkowitych:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
arrayOutput Int 5
intOutput Int 5

Min

min(arg1)

Zwraca minimalną wartość z tablicy liczb całkowitych lub rozdzielanej przecinkami listy liczb całkowitych.

W Bicep użyj min funkcji .

Parametry

Parameter Required Typ Opis
arg1 powiedział: Tak tablica liczb całkowitych lub rozdzielona przecinkami lista liczb całkowitych Kolekcja, aby uzyskać minimalną wartość.

Wartość zwracana

Liczba całkowita reprezentująca minimalną wartość z kolekcji.

Przykład

W poniższym przykładzie pokazano, jak używać z min tablicą i listą liczb całkowitych:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
arrayOutput Int 0
intOutput Int 0

modyfikacja

mod(operand1, operand2)

Zwraca iloraz dzielenia całkowitego przy użyciu dwóch podanych liczb całkowitych.

Funkcja nie jest obsługiwana mod w Bicep. Zamiast tego użyj operatora% .

Parametry

Parameter Required Typ Opis
operand1 Tak int (integer) Liczba jest podzielona.
operand2 Tak int (integer) Liczba, która jest używana do dzielenia, nie może być 0.

Wartość zwracana

Liczba całkowita reprezentująca resztę.

Przykład

Poniższy przykład zwraca iloraz dzielenia jednego parametru przez inny:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
modResult Int 1

mul

mul(operand1, operand2)

Zwraca mnożenie dwóch podanych liczb całkowitych.

Funkcja nie jest obsługiwana mul w Bicep. Zamiast tego użyj operatora * .

Parametry

Parameter Required Typ Opis
operand1 Tak int (integer) Pierwsza liczba do pomnożenia.
operand2 Tak int (integer) Druga liczba do pomnożenia.

Wartość zwracana

Liczba całkowita reprezentująca mnożenie.

Przykład

Poniższy przykład mnoży jeden parametr przez inny:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
mulResult Int 45

Subskrypcja

sub(operand1, operand2)

Zwraca odejmowanie dwóch podanych liczb całkowitych.

Funkcja nie jest obsługiwana sub w Bicep. Zamiast tego użyj operatora - .

Parametry

Parameter Required Typ Opis
operand1 Tak int (integer) Liczba odejmowana od.
operand2 Tak int (integer) Liczba, która jest odejmowana.

Wartość zwracana

Liczba całkowita reprezentująca odejmowanie.

Przykład

Poniższy przykład odejmuje jeden parametr z innego:

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

Dane wyjściowe wartości domyślnych z poprzedniego przykładu to:

Nazwa Typ Wartość
subResult Int 4

Dalsze kroki