Rust

Pattern Matching

Ekspresi match, if let, while let, destructuring, guards, @ bindings, exhaustiveness

18 pertanyaan wawancaraยท
Mid-Level
1

Apa sintaks yang benar untuk ekspresi match dasar di Rust?

Jawaban

Ekspresi match di Rust menggunakan kata kunci match diikuti oleh nilai yang akan dianalisis, lalu kurung kurawal yang berisi berbagai arm (pattern) yang dipisahkan koma. Setiap arm menggunakan pattern diikuti oleh => dan kode yang akan dieksekusi. Sintaks ini memungkinkan compiler memverifikasi bahwa semua kemungkinan kasus tercakup.

2

Pattern mana yang harus digunakan untuk menangkap semua nilai yang tersisa dalam sebuah match?

Jawaban

Pattern _ (underscore) adalah pattern catch-all di Rust. Ia cocok dengan nilai apa pun tanpa mengikatnya ke sebuah variabel. Sebagai alternatif, menggunakan nama variabel (seperti other atau n) menangkap nilai tersebut. _ lebih disukai ketika nilai tidak digunakan karena dengan jelas menunjukkan maksudnya.

3

Bagaimana cara kerja if let dibandingkan dengan match?

Jawaban

if let adalah sintaks ringkas untuk match yang menangani hanya satu pattern dan mengabaikan yang lain. Alih-alih menulis match lengkap dengan arm catch-all _, if let memungkinkan ekstraksi nilai secara ringkas ketika hanya satu kasus tertentu yang penting. Ini sangat berguna dengan Option dan Result.

4

Apa itu exhaustiveness dalam konteks pattern matching Rust?

5

Bagaimana cara mendekonstruksi tuple dalam pattern match?

+15 pertanyaan wawancara

Kuasai Rust untuk wawancara berikutnya

Akses semua pertanyaan, flashcards, tes teknis, latihan code review dan simulator wawancara.

Mulai gratis