Expresiones match en Rust
Coincidencia de patrones exhaustiva sobre un valor.
fn describe(n: i32) -> String {
match n {
0 => "zero".to_string(),
1 | 2 | 3 => "small".to_string(),
4..=9 => "medium".to_string(),
_ if n < 0 => "negative".to_string(),
_ => "large".to_string(),
}
}
fn main() {
println!("{}", describe(7));
}
Cómo funciona
- Las ramas de literal, alternativa y rango coinciden valores.
- Un guard
if n < 0refina una rama. _es el comodín; el match debe ser exhaustivo.
Palabras clave y builtins usados aquí
Stringfni32ifmatch
El intento, en números
- Líneas
- 13
- Caracteres a escribir
- 243
- Tokens
- 98
- Ritmo de tres estrellas
- 90 tpm
Al ritmo de tres estrellas de 90 tokens por minuto, este intento toma unos 65 segundos.
Paso 1 de 4 en Coincidencia de patrones; paso 19 de 39 en Fundamentos del lenguaje.