if`语句确定条件是否为真。如果条件为`true``if``if
表示if
- if块
- if-else块
- if else-if阶梯块
- 巢状if语句
if
语句块的语法 -
if condition
{
//block statements;
}
在上面的语法中,如果条件为真,则执行块语句,否则跳过if
if
语句的流程图 -
范例:
if
fn main(){
let a=1;
if a==1
{
println!("a is equal to 1");
}
}
执行上面范例程式码,得到以下结果:
a is equal to 1
在这个例子中,因此,a``1``if``println!
如果条件为真,则执行 如果条件为假,则跳过if``else``if``else
if-else语句的语法
if condition
{
//block statements
}else{
//block statements
}
if-else的流程图
下面来看看一个if-else
fn main()
{
let a=3;
let b=4;
if a>b
{
println!("a is greater than b");
}
else
{
println!("a is smaller than b");
}
}
执行上面范例程式码,得到以下结果 -
a is smaller than b
在该范例中,变数 因此,执行a``3``a``b``else
如果要检查多个条件,则可使用else-if
else-if
语句的语法 -
if condition 1
{
//block statements
}else if condition 2
{
//block statements
}
.
.
else{
//block statements
}
在上面的语法中,Rust为第一个真实条件执行块,当匹配到第一个真条件时,它就不会执行其余的块。
else if
语句块的流程图 -
下面来看一个else-if
fn main(){
let num= -5;
if num>0
{
println!("number is greater than 0");
}
else if num<0
{
println!("number is less than 0 ");
}
else
{
println!("number is not equal to 0");
}
}
执行上面范例程式码,得到以下结果 -
number is less than 0
在此范例中,变数 因此,num``-5``num``0``else if
当 巢状if-else``if``else``if-else
if-else
if condition 1
{
// 巢狀if/else塊
if condition 2
{
//block statements
}else
{
//block statements
}
}else{
//block statements
}
下面来看一个巢状if-else
fn main(){
let a=5;
let b=6;
if a!=b
{
if a>b
{
println!("a is greater than b");
}else{
println!("a is less than b");
}
}
else
{
println!("a is equal to b");
}
}
执行上面范例程式码,得到以下结果 -
a is less than b
在此范例中,因此,控制进入 因此,执行a``b``if``a``b``else``if