
Pattern Matching
Wyrażenia match, if let, while let, destrukturyzacja, guards, @ bindings, kompletność (exhaustiveness)
1Jaka jest poprawna składnia podstawowego wyrażenia match w Rust?
Jaka jest poprawna składnia podstawowego wyrażenia match w Rust?
Odpowiedź
Wyrażenie match w Rust używa słowa kluczowego match, po którym następuje analizowana wartość, a następnie nawiasy klamrowe zawierające różne ramiona (pattern) oddzielone przecinkami. Każde ramię używa pattern, po którym następuje => i kod do wykonania. Ta składnia pozwala kompilatorowi sprawdzić, że wszystkie możliwe przypadki są pokryte.
2Którego pattern należy użyć, aby przechwycić wszystkie pozostałe wartości w match?
Którego pattern należy użyć, aby przechwycić wszystkie pozostałe wartości w match?
Odpowiedź
Pattern _ (underscore) jest pattern catch-all w Rust. Dopasowuje dowolną wartość bez wiązania jej ze zmienną. Alternatywnie użycie nazwy zmiennej (jak other lub n) przechwytuje wartość. _ jest preferowane, gdy wartość nie jest używana, ponieważ wyraźnie wskazuje intencję.
3Jak działa if let w porównaniu z match?
Jak działa if let w porównaniu z match?
Odpowiedź
if let to skrócona składnia dla match, który obsługuje tylko jeden pattern i ignoruje pozostałe. Zamiast pisać pełne match z arm catch-all _, if let pozwala zwięźle wyodrębnić wartość, gdy ważny jest tylko jeden konkretny przypadek. Jest szczególnie przydatne z Option i Result.
Czym jest exhaustiveness w kontekście pattern matching w Rust?
Jak zdekonstruować tuple w pattern match?
+15 pytań z rozmów
Inne tematy rekrutacyjne Rust
Podstawy Rusta
Ownership & Borrowing
Structs & Enums
Obsługa błędów
Kolekcje
Moduły i pakiety
Traits
Generics
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Makra
Serde i serializacja
Unsafe Rust
Zaawansowane traity
Zaawansowane Lifetime
Type System
Tokio & Async I/O
Optymalizacja Wydajności
Memory Management
Web Frameworks
Database Integration
Wzorce projektowe w Rust
Opanuj Rust na następną rozmowę
Uzyskaj dostęp do wszystkich pytań, flashcards, testów technicznych, ćwiczeń code review i symulatorów rozmów.
Zacznij za darmo