L'istruzione If in Visual Basic

L'operatore condizionale If può essere usato anche al momento dell'assegnazione di una variabile.

var = if (espressione, ris1, ris2)

L'espressione di controllo è un'espressione booleana.

  • Se l'espressione è vera, allora var=ris1.
  • Se l'espressione è falsa, allora var=ris2.

La differenza tra If e Iff. L'operatore If con tre argomenti valuta soltanto i primi due parametri: l'espressione e il primo risultato (ris1). Non controlla ris2. Questo approccio è detto short circuit. Si distingue dalla funzione IIf che, invece, controlla tutti i parametri. Quindi, la funzione Iff controlla anche ris2.

Un esempio pratico

In questo esempio la variabile stringa prova contiene "y" se la variabile anno è 2020. Viceversa, contiene "n"

Dim prova As String
prova = if (anno=2020, "y", "n")

Si può usare anche al momento della dichiarazione

Dim prova As String = if (anno=2020, "y", "n")

Metodo alternativo

In alternativa, posso usare l'operatore if anche senza l'espressione di controllo.

var = if (a,b)

L'assegnazione utilizza il primo argomento diverso da Nothing

  • Se a<>Nothing allora var=a
  • Se a=Nothing allora var=b.

Esempio

In questo caso l'assegnazione è prova="hello" perché a=Nothing.

Dim a As String = Nothing
Dim b As String = "hello"
Dim prova As String = if(a,b)

In quest'altro caso, invece, l'assegnazione è prova="ciao" perché il primo argomento è diverso da Nothing.

Dim a As String = "ciao"
Dim b As String = "hello"
Dim prova As String = if(a,b)

E così via

 


 

Segnalami un errore, un refuso o un suggerimento per migliorare gli appunti

FacebookTwitterLinkedinLinkedin
knowledge base

Visual Basic .NET

Il linguaggio di programmazione

Visual Studio