You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

1.1 KiB

附录 C表达式

语句与表达式章节中,我们对表达式有过介绍,下面对这些常用表达式进行一一说明。

基本表达式

let n = 3;
let s = "test";

if 表达式

fn main() {
    let var1 = 10;

    let var2 = if var1 >= 10 {
        var1
    } else {
        var1 + 10
    };

    println!("{}", var2);
}

通过 if 表达式将值赋予 var2

你还可以在循环中结合 continuebreak 来使用:

let mut v = 0;
for i in 1..10 {
    v = if i == 9 {
        continue
    } else {
        i
    }
}
println!("{}", v);

if let 表达式

let o = Some(3);
let v = if let Some(x) = o {
    x
} else {
    0
};

match 表达式

let o = Some(3);
let v = match o {
    Some(x) => x,
    _ => 0
};

loop 表达式

let mut n = 0;
let v = loop {
    if n == 10 {
        break n
    }
    n += 1;
};

语句块

let mut n = 0;
let v = {
    println!("before: {}", n);
    n += 1;
    println!("after: {}", n);
    n
};
println!("{}", v);