Condividi tramite


Funzioni numeriche per i modelli di Resource Manager

Resource Manager offre le funzioni seguenti per l'uso di numeri interi nel modello di Azure Resource Manager (modello di Resource Manager):

Suggerimento

È consigliabile usare Bicep perché offre le stesse funzionalità dei modelli arm e la sintassi è più facile da usare. Per altre informazioni sull'uso intdi , mine max in Bicep, vedere numeric funzioni. Per altri valori numerici, vedere Operatori numerici .

Aggiungere

add(operand1, operand2)

Restituisce la somma dei due numeri interi forniti.

La funzione add non è supportata in Bicep. Usare invece l'operatore+ .

Parametri

Parametro Obbligatorio TIPO Descrizione
operando1 Int Primo numero da aggiungere.
operando2 Int Secondo numero da aggiungere.

Valore restituito

Intero che contiene la somma dei parametri.

Esempio

Nell'esempio seguente vengono aggiunti due parametri:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
addResult int 8

copyIndex

copyIndex(loopName, offset)

Restituisce l'indice di un ciclo di iterazione.

In Bicep usare cicli iterativi.

Parametri

Parametro Obbligatorio TIPO Descrizione
loopName NO corda Nome del ciclo per ottenere l'iterazione.
offset NO Int Numero da aggiungere al valore di iterazione in base zero.

Osservazioni:

Questa funzione viene sempre usata con un oggetto copy . Se non viene specificato alcun valore per offset, viene restituito il valore di iterazione corrente. Il valore di iterazione inizia da zero.

La proprietà loopName consente di specificare se copyIndex si fa riferimento a un'iterazione della risorsa o a un'iterazione di proprietà. Se non viene specificato alcun valore per loopName, viene usata l'iterazione del tipo di risorsa corrente. Specificare un valore per loopName durante l'iterazione su una proprietà.

Per altre informazioni sull'uso della copia, vedere:

Esempio

L'esempio seguente mostra un ciclo di copia e il valore di indice incluso nel nome:

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

Valore restituito

Intero che rappresenta l'indice corrente dell'iterazione.

div

div(operand1, operand2)

Restituisce la divisione integer dei due interi forniti.

La funzione div non è supportata in Bicep. Usare invece l'operatore/ .

Parametri

Parametro Obbligatorio TIPO Descrizione
operando1 Int Numero diviso.
operando2 Int Numero utilizzato per dividere. Non può essere 0.

Valore restituito

Intero che rappresenta la divisione.

Esempio

L'esempio seguente divide un parametro per un altro:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
divResult int 2

galleggiare

float(arg1)

Converte il valore in un numero a virgola mobile. Questa funzione viene usata solo quando si passano parametri personalizzati a un'applicazione, ad esempio un'app per la logica.

La funzione float non è supportata in Bicep.

Parametri

Parametro Obbligatorio TIPO Descrizione
arg1 stringa o numero intero Valore da convertire in un numero a virgola mobile.

Valore restituito

Numero a virgola mobile.

Esempio

L'esempio seguente illustra come usare float per passare parametri a un'app per la logica:

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

Int

int(valueToConvert)

Converte il valore specificato in un numero intero.

In Bicep usare la int funzione .

Parametri

Parametro Obbligatorio TIPO Descrizione
valueToConvert stringa o numero intero Valore da convertire in un numero intero.

Valore restituito

Intero del valore convertito.

Esempio

Il modello di esempio seguente converte il valore del parametro fornito dall'utente in un numero intero:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
intResult int 4

max

max(arg1)

Restituisce il valore massimo da una matrice di numeri interi o da un elenco di numeri interi delimitato da virgole.

In Bicep usare la max funzione .

Parametri

Parametro Obbligatorio TIPO Descrizione
arg1 matrice di numeri interi o elenco di numeri interi delimitato da virgole La raccolta per ottenere il valore massimo.

Valore restituito

Intero che rappresenta il valore massimo dell'insieme.

Esempio

L'esempio seguente illustra come usare max con una matrice e un elenco di numeri interi:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
arrayOutput int 5
intOutput int 5

minuto

min(arg1)

Restituisce il valore minimo di una matrice di numeri interi o di un elenco di numeri interi delimitato da virgole.

In Bicep usare la min funzione .

Parametri

Parametro Obbligatorio TIPO Descrizione
arg1 matrice di numeri interi o elenco di numeri interi delimitato da virgole La raccolta per ottenere il valore minimo.

Valore restituito

Intero che rappresenta il valore minimo dell'insieme.

Esempio

L'esempio seguente illustra come usare min con una matrice e un elenco di numeri interi:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
arrayOutput int 0
intOutput int 0

mod

mod(operand1, operand2)

Restituisce il quoziente della divisione integer utilizzando i due interi forniti.

La funzione mod non è supportata in Bicep. Usare invece l'operatore% .

Parametri

Parametro Obbligatorio TIPO Descrizione
operando1 Int Numero diviso.
operando2 Int Numero usato per dividere, non può essere 0.

Valore restituito

Intero che rappresenta il resto.

Esempio

Nell'esempio seguente viene restituito il quoziente di divisione di un parametro per un altro:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
modResult int 1

mul

mul(operand1, operand2)

Restituisce la moltiplicazione dei due interi forniti.

La funzione mul non è supportata in Bicep. Usare invece l'operatore * .

Parametri

Parametro Obbligatorio TIPO Descrizione
operando1 Int Primo numero da moltiplicare.
operando2 Int Secondo numero da moltiplicare.

Valore restituito

Intero che rappresenta la moltiplicazione.

Esempio

Nell'esempio seguente viene moltiplicato un parametro per un altro:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
mulResult int 45

sostituto

sub(operand1, operand2)

Restituisce la sottrazione dei due interi forniti.

La funzione sub non è supportata in Bicep. Usare invece l'operatore - .

Parametri

Parametro Obbligatorio TIPO Descrizione
operando1 Int Numero da cui viene sottratto.
operando2 Int Numero sottratto.

Valore restituito

Intero che rappresenta la sottrazione.

Esempio

L'esempio seguente sottrae un parametro da un altro:

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

L'output dei valori predefiniti dell'esempio precedente è:

Nome TIPO Valore
subResult int 4

Passaggi successivi