if
語句確定條件是否為真。如果條件為true
,則執行if
塊,否則,控制會跳過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
塊併在螢幕上列印「a is smaller than b」。
如果要檢查多個條件,則可使用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
塊內。