ActionScript 3 – Programmation séquentielle et orientée objet
218
à afficher sur la scène la position de l’occurrence intitulée balle. Elle se trouve soit dans
la partie haute de la scène, soit dans la partie basse. Dans ce dernier cas, elle peut se situer
à gauche ou à droite ; nous utilisons donc deux structures conditionnelles imbriquées pour
tester sa position.
if (balle.y<300) {
messageBalle.text="Haut";
} else {
if (balle.x<400) {
messageBalle.text="Bas Gauche";
} else {
messageBalle.text="Bas Droite";
}
}
L’opérateur ternaire
Il existe une autre syntaxe pour écrire une structure conditionnelle de type if... else... Elle
s’avère plus simple à utiliser et à rédiger dès lors que le principe de la structure conditionnelle est assimilé. Cependant sa lecture est assez surprenante au premier abord.
Une structure conditionnelle écrite avec l’opérateur ternaire peut être perçue de la façon
suivante :
Valeur à récupérer = test ? valeur à renvoyer si test est vrai : valeur à renvoyer
➥si test est faux.
Nous pourrions aussi la simplifier ainsi :
Valeur = test ? valeur si vrai : valeur si faux;
ou encore, si les valeurs à renvoyer sont true et false, par :
Valeur = test ? true : false;
Observez bien les signes typographiques de séparation ? et :. Ils séparent simplement les
deux valeurs à renvoyer. Si le test est vrai, la variable Valeur reçoit la valeur placée après
le signe ? ; si le test est faux, elle reçoit la valeur placée après le signe :.
Considérons la structure conditionnelle suivante :
if (balle.x<400) {
messageBalle.text="Bas Gauche";
} else {
messageBalle.text="Bas Droite";
}
Opérateurs unaires, binaires et ternaires
Un opérateur unaire ne possède qu’un seul opérande, comme dans l’instruction -a, où l’opérateur -
permet simplement de prendre l’opposé de a. Un opérateur binaire utilise deux opérandes, comme les
opérateurs = et +, qui utilisent nécessairement deux constantes ou variables (a=6 ou b+c). L’opérateur
utilisé ici est un opérateur ternaire qui utilise trois opérandes.
Précédent

- 246/426

Suivant