分支
一、三元运算符
<test> ? <resultIfTrue> : <resultIfFalse>
计算<test>可以得到一个布尔值,运算符的结果根据这个值来确定是<resultIfTrue>还是<resultIfFalse>。
二、if语句
if语句基本语法:
if (<test>)
<code executed if <test> is true>;
先执行<test>,如果<test>是true,则执行该语句之后的代码。在代码执行完后,或者因为<test>是false,不执行这段代码,继续执行后面的代码。
else语句和if语句合并使用:
if (<test>)
<code executed if <test> is true>;
else
<code executed if <test> is false>;
先执行<test>,如果是true,执行if语句,如果是false,执行else语句。
if (<test>)
{
<code executed if <test> is true>;
}
else
{
<code executed if <test> is false>;
}
两段代码可以使用花括号将他们放在多个代码行。
if-else语句与三元运算符形式比较,冗长,但便于阅读和理解。
三、switch语句
switch语句非常类似于if语句,可以一次将测试变量与多个值进行比较,而不是仅测试一个条件。
switch基本语法:
switch (<testVar>)
{
case <comparisonVal1>:
<code to execute if <testVar> == <comparisonVal1> >
break;
case <comparisonVal2>:
<code to execute if <testVar> == <comparisonVal2> >
break;
……
case <comparisonValN>:
<code to execute if <testVar> == <comparisonValN> >
break;
default:
<code to execute if <testVar> != comparisonVals>
break;
}
<testVar>中的值与每一个<comparisonVal>值进行比较,如果有一个匹配,就执行为该匹配提供的语句。如果没有匹配,但有default语句,就执行default语句,就执行default部分的代码。
执行完每一部分的代码后,还需要有另一个语句break。
如果把多个case语句堆叠到一起,在后面加上代码块,可以一次检查多个条件,如果满足这些条件中的任何一个,就会执行代码:
switch (<testVar>)
{
case <comparisonVal1>:
case <comparisonVal2>:
<code to execute if <testVar> == <comparisonVal1> or
<testVar> == <comparisonVal2>>
break;
……
}