
Pattern Matching
Вирази match, if let, while let, деструктуризація, guards, @ bindings, повнота (exhaustiveness)
1Який правильний синтаксис для базового виразу match у Rust?
Який правильний синтаксис для базового виразу match у Rust?
Відповідь
Вираз match у Rust використовує ключове слово match, за яким іде значення для аналізу, потім фігурні дужки, що містять різні гілки (pattern), розділені комами. Кожна гілка використовує pattern, за яким іде => і код для виконання. Цей синтаксис дозволяє компілятору перевірити, що всі можливі випадки охоплені.
2Який pattern слід використовувати для захоплення всіх решти значень у match?
Який pattern слід використовувати для захоплення всіх решти значень у match?
Відповідь
Pattern _ (underscore) — це catch-all pattern у Rust. Він збігається з будь-яким значенням, не прив'язуючи його до змінної. Альтернативно, використання імені змінної (як other чи n) захоплює значення. _ є кращим вибором, коли значення не використовується, оскільки чітко вказує на намір.
3Як працює if let порівняно з match?
Як працює if let порівняно з match?
Відповідь
if let — це скорочений синтаксис для match, який обробляє лише один pattern і ігнорує інші. Замість того щоб писати повний match з catch-all arm _, if let дозволяє лаконічно витягти значення, коли важливий лише конкретний випадок. Це особливо корисно з Option та Result.
Що таке exhaustiveness у контексті pattern matching у Rust?
Як деструктурувати tuple у pattern match?
+15 питань зі співбесід
Інші теми співбесід Rust
Основи Rust
Ownership & Borrowing
Structs & Enums
Обробка помилок
Колекції
Модулі та пакети
Traits
Generics
Lifetimes
Iterators & Closures
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Макроси
Serde та серіалізація
Unsafe Rust
Просунуті trait'и
Просунуті Lifetimes
Type System
Tokio & Async I/O
Оптимізація продуктивності
Memory Management
Web Frameworks
Database Integration
Патерни проєктування Rust
Опануй Rust для наступної співбесіди
Отримай доступ до всіх питань, flashcards, технічних тестів, вправ code review та симуляторів співбесід.
Почни безкоштовно