Condividi tramite


Procedura: verificare più valori di un'espressione

Aggiornamento: novembre 2007

Quando la stessa espressione viene confrontata con più valori differenti, è possibile utilizzare la costruzione Istruzione Select...Case (Visual Basic) in alternativa alla costruzione Istruzione If...Then...Else (Visual Basic). Mentre con le istruzioni If ed ElseIf (Visual Basic) è possibile valutare un'espressione diversa in ogni istruzione, l'istruzione Select consente di valutare un'unica espressione una sola volta e di utilizzarla per ogni confronto.

Per valutare un'espressione una volta e verificare diversi valori

  • Utilizzare la costruzione Select...Case per specificare l'espressione e i valori da verificare. Ogni istruzione Case può contenere uno o più valori, un intervallo di valori o una combinazione di valori e operatori di confronto. È possibile utilizzare un'istruzione Case Else per gestire tutti i valori non verificati dalle precedenti istruzioni Case. Nell'esempio che segue vengono illustrate queste possibilità.

    Function bonus(ByVal performance As Integer, ByVal salary As Decimal) _
        As Decimal
        Select performance
            Case 1
                Return salary * 0.1
            Case 2, 3
                Return salary * 0.09
            Case 5 To 7
                Return salary * 0.07
            Case 4, 8 To 10
                Return salary * 0.05
            Case Is < 15
                Return 100
            Case Else
                Return 0
       End Select
    End Function
    

    In Visual Basic il valore dell'espressione viene confrontato con i valori delle istruzioni Case in base all'ordine in cui sono riportati nella costruzione Select...Case. Se viene rilevata una corrispondenza o un'istruzione Case Else, viene eseguito il blocco di istruzioni corrispondente. In ogni caso si dirama verso l'istruzione successiva all'istruzione End Select.

    È possibile avere un numero qualsiasi di istruzioni Case nonché includere o omettere un'istruzione Case Else indipendentemente dalla presenza di istruzioni Case.

Un esempio di codice per la costruzione Select...Case è anche disponibile come frammento di codice IntelliSense. Nella casella di selezione dei frammenti di codice si trova in Linguaggio Visual Basic. Per ulteriori informazioni, vedere Procedura: inserire frammenti nel codice (Visual Basic).

Vedere anche

Attività

Procedura: trasferire un controllo fuori da una struttura di controllo

Procedura: eseguire istruzioni in base a una o più condizioni

Procedura: mantenere il controllo quando si verifica un errore

Concetti

Strutture decisionali

Strutture di ciclo

Altre strutture di controllo

Strutture di controllo nidificate

Altre risorse

Flusso di controllo in Visual Basic