ARM şablonları için sayısal işlevler

Resource Manager, Azure Resource Manager şablonunuzdaki (ARM şablonu) tamsayılarla çalışmak için aşağıdaki işlevleri sağlar:

İpucu

ARM şablonlarıyla aynı özellikleri sunduğundan ve söz diziminin kullanımı daha kolay olduğundan Bicep'i öneririz. Bicep'te , minve max kullanma inthakkında daha fazla bilgi edinmek için bkz. sayısal işlevler. Diğer sayısal değerler için bkz . sayısal işleçler.

add

add(operand1, operand2)

Sağlanan iki tamsayının toplamını döndürür.

İşlev add Bicep'te desteklenmez. Bunun yerine işlecini + kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
işlenen1 Yes int Eklenecek ilk sayı.
işlenen2 Yes int Eklenecek ikinci sayı.

Dönüş değeri

Parametrelerin toplamını içeren bir tamsayı.

Örnek

Aşağıdaki örnek iki parametre ekler.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
addResult Int 8

copyIndex

copyIndex(loopName, offset)

Yineleme döngüsünün dizinini döndürür.

Bicep'te yinelemeli döngüleri kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
loopName Hayır Dize Yinelemeyi almak için döngünün adı.
fark Hayır int Sıfır tabanlı yineleme değerine eklenecek sayı.

Açıklamalar

Bu işlev her zaman bir kopyalama nesnesiyle kullanılır. Uzaklık için değer sağlanmazsa geçerli yineleme değeri döndürülür. Yineleme değeri sıfırdan başlar.

loopName özelliği, copyIndex'in kaynak yinelemesine mi yoksa özellik yinelemesine mi başvuracağını belirtmenizi sağlar. loopName için değer sağlanmazsa, geçerli kaynak türü yinelemesi kullanılır. Bir özellikte yinelenirken loopName için bir değer sağlayın.

Kopyalamayı kullanma hakkında daha fazla bilgi için bkz:

Örnek

Aşağıdaki örnekte bir kopyalama döngüsü ve ada dahil edilen dizin değeri gösterilmektedir.

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

Dönüş değeri

Yinelemenin geçerli dizinini temsil eden bir tamsayı.

div

div(operand1, operand2)

Sağlanan iki tamsayının tamsayı bölümünü döndürür.

İşlev div Bicep'te desteklenmez. Bunun yerine işlecini / kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
işlenen1 Yes int Bölünen sayı.
işlenen2 Yes int Bölmek için kullanılan sayı. 0 olamaz.

Dönüş değeri

Bölmeyi temsil eden bir tamsayı.

Örnek

Aşağıdaki örnek bir parametreyi başka bir parametreye böler.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
divResult Int 2

kayan noktalı sayı

float(arg1)

Değeri kayan noktalı sayıya dönüştürür. Bu işlevi yalnızca mantıksal uygulama gibi bir uygulamaya özel parametreler geçirirken kullanırsınız.

İşlev float Bicep'te desteklenmez.

Parametreler

Parametre Zorunlu Türü Açıklama
arg1 Yes dize veya int Kayan nokta sayısına dönüştürülecek değer.

Dönüş değeri

Kayan nokta numarası.

Örnek

Aşağıdaki örnekte, mantıksal uygulamaya parametre geçirmek için float özelliğinin nasıl kullanılacağı gösterilmektedir:

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

int

int(valueToConvert)

Belirtilen değeri tamsayıya dönüştürür.

Bicep'te int işlevini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
valueToConvert Yes dize veya int Tamsayıya dönüştürülecek değer.

Dönüş değeri

Dönüştürülen değerin tamsayısı.

Örnek

Aşağıdaki örnek şablon, kullanıcı tarafından sağlanan parametre değerini tamsayıya dönüştürür.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
intResult Int 4

max

max(arg1)

Bir tamsayı dizisinden veya virgülle ayrılmış bir tamsayı listesinden en büyük değeri döndürür.

Bicep'te max işlevini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
arg1 Yes tamsayı dizisi veya virgülle ayrılmış tamsayı listesi En büyük değeri almak için koleksiyon.

Dönüş değeri

Koleksiyondaki en büyük değeri temsil eden bir tamsayı.

Örnek

Aşağıdaki örnekte, bir dizi ve tamsayı listesiyle max işlevinin nasıl kullanılacağı gösterilmektedir.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
arrayOutput Int 5
intOutput Int 5

dk

min(arg1)

Bir tamsayı dizisinden veya virgülle ayrılmış bir tamsayı listesinden en düşük değeri döndürür.

Bicep'te min işlevini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
arg1 Yes tamsayı dizisi veya virgülle ayrılmış tamsayı listesi En düşük değeri almak için koleksiyon.

Dönüş değeri

Koleksiyondaki en düşük değeri temsil eden bir tamsayı.

Örnek

Aşağıdaki örnekte, bir dizi ve tamsayı listesiyle min değerinin nasıl kullanılacağı gösterilmektedir.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
arrayOutput Int 0
intOutput Int 0

mod

mod(operand1, operand2)

Sağlanan iki tamsayıyı kullanarak tamsayı bölümünün geri kalanını döndürür.

İşlev mod Bicep'te desteklenmez. Bunun yerine % işlecini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
işlenen1 Yes int Bölünen sayı.
işlenen2 Yes int Bölmek için kullanılan sayı, 0 olamaz.

Dönüş değeri

Kalanı temsil eden bir tamsayı.

Örnek

Aşağıdaki örnek, bir parametreyi başka bir parametreye bölme işleminin geri kalanını döndürür.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
modResult Int 1

Mul

mul(operand1, operand2)

Sağlanan iki tamsayının çarpımını döndürür.

İşlev mul Bicep'te desteklenmez. Bunun yerine * işlecini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
işlenen1 Yes int Çarpacak ilk sayı.
işlenen2 Yes int Çarpmak için ikinci sayı.

Dönüş değeri

Çarpmayı temsil eden bir tamsayı.

Örnek

Aşağıdaki örnek, bir parametreyi başka bir parametreyle çarpar.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
mulResult Int 45

alt

sub(operand1, operand2)

Sağlanan iki tamsayının çıkarma işlemini döndürür.

İşlev sub Bicep'te desteklenmez. Bunun yerine - işlecini kullanın.

Parametreler

Parametre Zorunlu Türü Açıklama
işlenen1 Yes int Çıkarılmış sayıdır.
işlenen2 Yes int Çıkarılmış sayıdır.

Dönüş değeri

Çıkarma işlemini temsil eden bir tamsayı.

Örnek

Aşağıdaki örnek bir parametreyi başka bir parametreden çıkarır.

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

Yukarıdaki örnekten varsayılan değerleri içeren çıkış:

Adı Tür Değer
subResult Int 4

Sonraki adımlar

  • ARM şablonundaki bölümlerin açıklaması için bkz . ARM şablonlarının yapısını ve söz dizimini anlama.
  • Kaynak türü oluştururken belirtilen sayıda yineleme yapmak için bkz . ARM şablonlarında kaynak yinelemesi.