
Iterators & Closures
Iterator trait, iterator adapters (map, filter, fold), cú pháp closure, move closures, Fn traits
1Một kiểu phải triển khai trait nào để có thể được sử dụng trong vòng lặp for trong Rust?
Một kiểu phải triển khai trait nào để có thể được sử dụng trong vòng lặp for trong Rust?
Câu trả lời
Trait IntoIterator cho phép một kiểu được chuyển đổi thành iterator. Vòng lặp for tự động gọi into_iter() trên biểu thức. Các kiểu như Vec, array và range triển khai trait này theo mặc định, cho phép duyệt chúng trực tiếp bằng for.
2Phương thức nào của trait Iterator bắt buộc phải được triển khai?
Phương thức nào của trait Iterator bắt buộc phải được triển khai?
Câu trả lời
Phương thức next() là phương thức duy nhất bắt buộc của trait Iterator. Nó trả về Option<Self::Item>, hoặc Some(item) nếu còn phần tử, hoặc None khi quá trình lặp kết thúc. Tất cả các phương thức khác như map, filter hay collect đều có triển khai mặc định dựa trên next().
3Sự khác biệt giữa iter(), iter_mut() và into_iter() trên Vec<T> là gì?
Sự khác biệt giữa iter(), iter_mut() và into_iter() trên Vec<T> là gì?
Câu trả lời
iter() trả về một iterator trên các tham chiếu bất biến (&T), iter_mut() trên các tham chiếu khả biến (&mut T), và into_iter() tiêu thụ Vec và trả về các phần tử theo giá trị (T). Lựa chọn phụ thuộc vào việc bạn muốn đọc, sửa đổi hay sở hữu các phần tử.
Iterator lazy trong Rust là gì và tại sao nó quan trọng?
Cú pháp đúng để định nghĩa một closure nhận hai tham số i32 và trả về tổng của chúng là gì?
+19 câu hỏi phỏng vấn
Các chủ đề phỏng vấn Rust khác
Cơ bản về Rust
Ownership & Borrowing
Structs & Enums
Xử lý lỗi
Collections
Modules & Packages
Traits
Generics
Lifetimes
Smart Pointers
Concurrency Basics
async/await
Testing
Cargo & Ecosystem
Pattern Matching
Macro
Serde & Serialization
Unsafe Rust
Trait nâng cao
Lifetime Nâng Cao
Type System
Tokio & Async I/O
Tối ưu hóa Hiệu suất
Memory Management
Web Frameworks
Database Integration
Design Pattern trong Rust
Nắm vững Rust cho lần phỏng vấn tiếp theo
Truy cập tất cả câu hỏi, flashcards, bài kiểm tra kỹ thuật, bài tập code review và mô phỏng phỏng vấn.
Bắt đầu miễn phí