条件
if
if let
match
if 表达式
Rust 中的 if 表达式基本就是如下几种形式:
相对于 C 系语言,Rust 的 if 表达式的显著特点是:
判断条件不用小括号括起来;
它是表达式,而不是语句。
鉴于上述第二点,因为是表达式,所以我们可以写出如下代码:
或者压缩成一行:
if let
我们在代码中常常会看到 if let
成对出现,这实际上是一个 match 的简化用法。直接举例来说明:
上面代码等价于
设计这个特性的目的是,在条件判断的时候,直接做一次模式匹配,方便代码书写,使代码更紧凑。
match
Rust 中没有类似于 C 的 switch
关键字,但它有用于模式匹配的 match
,能实现同样的功能,并且强大太多。
match 的使用非常简单,举例如下:
注意,match 也是一个表达式。match 后面会专门论述,请参见 模式匹配 这一章。
Last updated