Flash / Flex / ActionScript/Language/Conditional operator
Содержание
The Conditional Operator: (logical expression) ? if true : if false;
package{
import flash.display.Sprite;
public class Main extends Sprite{
public function Main(){
var weather:String = "rain";
(weather == "hail") ? trace("bringMotorcycleHelmet") : trace("bringStrawHat");
//This is basically the same as writing:
if (weather == "hail") {
trace("bringMotorcycleHelmet");
} else {
trace("bringStrawHat");
}
}
}
}
Use conditional operator in for loop
package{
import flash.display.Sprite;
public class Main extends Sprite{
public function Main(){
for (var i:Number = 50; i > -50; i -= (i > 0 || i < -30) ? 5 : 10){
trace(i);
}
}
}
}
50
45
40
35
30
25
20
15
10
5
0
-10
-20
-30
-40
-45
Use conditional operator to set a default value for an undefined variable
package{
import flash.display.Sprite;
public class Main extends Sprite{
public function Main(){
var weather:String;
weather = weather ? weather : "partly cloudy";
trace(weather);
}
}
}
You can also use the conditional operator to return values that can be stored in a variable.
package{
import flash.display.Sprite;
public class Main extends Sprite{
public function Main(){
var weather:String = "rain";
var hatType:String = (weather == "hail") ? "helmet" : "straw";
trace(hatType);
}
}
}