match 简介:
是一种相较于if else语句更加简洁的关键字,一般用于根据变量的内容执行相对应的代码内容。
match表达式有多个arm(分支)组成,每个arm都由一个模式和它的代码块所组成,执行match时,会依次匹配每个arm ,直到其中一个arm的模式与变量相匹配,然后执行所对应的代码块。可以使用通配符_来代替没有列出的值。
简单示例:
use std::io;
fn main() {
println!("请输入所要执行的功能(1、2、3):");
let mut input_string = String::new();
io::stdin().read_line(&mut input_string).expect("输入错误!");
let number :i8 = match input_string.trim().parse(){
Ok(number) => number,
Err(_) => {
panic!("请输入有效数字!")
}
};
match number{
1 => println!("选择功能1"),
2 => println!("选择功能2"),
3 => println!("选择功能3"),
_ => println!("没有此功能")
}
}