Числовые функции для шаблонов ARM

Resource Manager предоставляет следующие функции для работы с целыми числами в шаблоне Azure Resource Manager (шаблон ARM):

Подсказка

Bicep рекомендуется, так как он предлагает те же возможности, что и шаблоны ARM, и синтаксис проще использовать. Дополнительные сведения об использовании int, а также max в Bicep см. в функциях numericmin. Сведения о других числовых значениях см. в числовых операторах.

добавить

add(operand1, operand2)

Возвращает сумму двух предоставленных целых чисел.

Функция add не поддерживается в Bicep. + Вместо этого используйте оператор.

Параметры

Параметр Обязательно Тип Описание
операнды1 Да инт Первое число для добавления.
operand2 Да инт Второй номер для добавления.

Возвращаемое значение

Целое число, содержащее сумму параметров.

Пример

В следующем примере добавляются два параметра:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
addResult int 8

copyIndex

copyIndex(loopName, offset)

Возвращает индекс цикла итерации.

В Bicep используйте итеративные циклы.

Параметры

Параметр Обязательно Тип Описание
loopName нет струна Имя цикла для получения итерации.
смещение нет инт Число, добавляемое к значению итерации на основе нуля.

Замечания

Эта функция всегда используется с объектом копирования . Если для смещения не указано значение, возвращается текущее значение итерации. Значение итерации начинается с нуля.

Свойство loopName позволяет указать, ссылается ли copyIndex итерация ресурса или итерация свойств. Если значение для loopName не указано, используется итерация текущего типа ресурса. Укажите значение loopName при итерации свойства.

Дополнительные сведения об использовании копирования см. в следующей статье:

Пример

В следующем примере показан цикл копирования и значение индекса, включенное в имя:

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

Возвращаемое значение

Целое число, представляющее текущий индекс итерации.

div

div(operand1, operand2)

Возвращает целочисленное деление двух предоставленных целых чисел.

Функция div не поддерживается в Bicep. / Вместо этого используйте оператор.

Параметры

Параметр Обязательно Тип Описание
операнды1 Да инт Число, разделенное.
operand2 Да инт Число, которое используется для деления. Не может быть 0.

Возвращаемое значение

Целое число, представляющее деление.

Пример

В следующем примере один параметр делится на другой.

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
divResult int 2

плавать

float(arg1)

Преобразует значение в число с плавающей запятой. Эта функция используется только при передаче пользовательских параметров приложению, например приложению логики.

Функция float не поддерживается в Bicep.

Параметры

Параметр Обязательно Тип Описание
Арг1 Да строка или целое число Значение для преобразования в число с плавающей запятой.

Возвращаемое значение

Число с плавающей запятой.

Пример

В следующем примере показано, как использовать float для передачи параметров в приложение логики:

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

инт

int(valueToConvert)

Преобразует указанное значение в целое число.

В Bicep используйте функцию int .

Параметры

Параметр Обязательно Тип Описание
valueToConvert Да строка или целое число Значение для преобразования в целое число.

Возвращаемое значение

Целое число преобразованного значения.

Пример

В следующем примере шаблона значение параметра, предоставленного пользователем, преобразуется в целое число:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
intResult int 4

максимум

max(arg1)

Возвращает максимальное значение из массива целых чисел или разделенный запятыми список целых чисел.

В Bicep используйте функцию max .

Параметры

Параметр Обязательно Тип Описание
Арг1 Да массив целых чисел или разделенный запятыми список целых чисел Коллекция, для которой необходимо получить максимальное значение.

Возвращаемое значение

Целое число, представляющее максимальное значение из коллекции.

Пример

В следующем примере показано, как использовать max массив и список целых чисел:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
arrayOutput int 5
intOutput int 5

минута

min(arg1)

Возвращает минимальное значение из массива целых чисел или разделенный запятыми список целых чисел.

В Bicep используйте функцию min .

Параметры

Параметр Обязательно Тип Описание
Арг1 Да массив целых чисел или разделенный запятыми список целых чисел Коллекция, для которой необходимо получить минимальное значение.

Возвращаемое значение

Целое число, представляющее минимальное значение из коллекции.

Пример

В следующем примере показано, как использовать min массив и список целых чисел:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
arrayOutput int 0
intOutput int 0

модуль

mod(operand1, operand2)

Возвращает цитент целочисленного деления с помощью двух предоставленных целых чисел.

Функция mod не поддерживается в Bicep. Вместо этого используйте оператор% .

Параметры

Параметр Обязательно Тип Описание
операнды1 Да инт Число, разделенное.
operand2 Да инт Число, которое используется для деления, не может быть 0.

Возвращаемое значение

Целое число, представляющее оставшуюся часть.

Пример

В следующем примере возвращается кворот деления одного параметра на другой:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
modResult int 1

мул

mul(operand1, operand2)

Возвращает умножение двух предоставленных целых чисел.

Функция mul не поддерживается в Bicep. Вместо этого используйте оператор * .

Параметры

Параметр Обязательно Тип Описание
операнды1 Да инт Первое число для умножения.
operand2 Да инт Второе число для умножения.

Возвращаемое значение

Целое число, представляющее умножение.

Пример

В следующем примере умножается один параметр на другой:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
mulResult int 45

подводная лодка

sub(operand1, operand2)

Возвращает вычитание двух предоставленных целых чисел.

Функция sub не поддерживается в Bicep. Вместо этого используйте оператор - .

Параметры

Параметр Обязательно Тип Описание
операнды1 Да инт Число, вычитаемое из.
operand2 Да инт Вычитаемое число.

Возвращаемое значение

Целое число, представляющее вычитание.

Пример

В следующем примере вычитается один параметр из другого:

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

Выходные данные значений по умолчанию из предыдущего примера:

Имя Тип Ценность
subResult int 4

Дальнейшие шаги