4D v16.3

If...Else...End if

Accueil

 
4D v16.3
If...Else...End if

If...Else...End if  


 

 

La syntaxe de la structure conditionnelle If...Else...End if est la suivante :

 If(Expression_booléenne)
    instruction(s)
 Else
    instruction(s)
 End if

A noter que l'élément Sinon est optionnel, vous pouvez écrire :

 If(Expression_booléenne)
    instruction(s)
 End if

La structure If...Else...End if permet à votre méthode de choisir dans une alternative, en fonction du résultat, VRAI ou FAUX, d’un test (une expression booléenne).

Si l’expression booléenne est VRAIE, les instructions qui suivent immédiatement le test sont exécutées. Si l’expression booléenne est FAUSSE, les instructions suivant la ligne Sinon sont exécutées. Le Sinon est optionnel ; lorsqu’il est omis, c’est la première ligne d’instructions suivant le Fin de si (s’il y en a une) qui est exécutée.

A noter que l'expression booléenne est toujours évaluée en totalité. Examinons en particulier le test suivant :

 If(MéthodeA & MéthodeB)
    ...
 End if

L'expression n'est VRAIE que si les deux méthodes sont VRAIES. Or, même si MéthodeA retourne FAUX, 4D évaluera quand même MéthodeB, ce qui représente une perte de temps inutile. Dans ce cas, il est préférable d'utiliser une structure du type :

 If(MéthodeA)
    If(MéthodeB)
       ...
    End if
 End if

Le résultat est équivalent et MéthodeB n'est évaluée que si nécessaire.

Exemple  

  ` Demander à l'utilisateur de saisir un nom
 $Rech:=Request(Saisissez un nom)
 If(OK=1)
    QUERY([Personnes];[Personnes]Nom=$Rech)
 Else
    ALERT("Vous n'avez pas saisi de nom.")
 End if

Astuce : Il n'est pas obligatoire que des instructions soient exécutées dans chaque branche de l'alternative. Lorsque vous développez un algorithme, ou lorsque vous poursuivez un but précis, rien ne vous empêche d'écrire :

 If(Expression_booléenne)
 Else
    instruction(s)
 End if

ou :

 If(Expression_booléenne)
    instruction(s)
 Else
 End if



Voir aussi  

Boucle...Fin de boucle
Case of...Else...End case
Conditions et boucles
Repeat...Until
While...End while

 
PROPRIÉTÉS 

Produit : 4D
Thème : Présentation du langage

 
HISTORIQUE 

 
UTILISATION DE L'ARTICLE

4D - Langage ( 4D v16)
4D - Langage ( 4D v16.1)
4D - Langage ( 4D v16.2)
4D - Langage ( 4D v16.3)