Rust 绑定模式匹配
示例
可以使用@以下方式将值绑定到名称:
struct Badger {
pub age: u8
}
fn main() {
//让我们创建一个Badger实例
let badger_john = Badger { age: 8 };
//现在,根据他的年龄,找出约翰最喜欢的活动是什么
match badger_john.age {
//我们可以将值范围绑定到变量并在匹配的分支中使用它们
baby_age @ 0...1 => println!("John is {} years old, he sleeps a lot", baby_age),
young_age @ 2...4 => println!("John is {} years old, he plays all day", young_age),
adult_age @ 5...10 => println!("John is {} years old, he eats honey most of the time", adult_age),
old_age => println!("John is {} years old, he mostly reads newspapers", old_age),
}
}这将打印:
John is 8 years old, he eats honey most of the time