Current date May 18, 2026
Tự học Rust

Tự học Rust – Bài 7: Vòng lặp (Loops)

URL copied
Share URL copied
Tự học Rust - Bài 7: Vòng lặp (Loops)
Tự học Rust – Bài 7: Vòng lặp (Loops)

1. Vòng lặp vô tận: `loop`

Đây là loại vòng lặp đơn giản nhất trong Rust. Nó sẽ chạy mãi mãi trừ khi bạn yêu cầu nó dừng lại.

loop {
    println!("Dòng này sẽ lặp lại vô tận!");
    // Cảnh báo: Bạn phải nhấn Ctrl + C để dừng nếu chạy terminal
}

Để dừng vòng lặp, chúng ta dùng từ khóa `break`:

let mut count = 0;
loop {
    count += 1;
    if count == 3 {
        break; // Dừng vòng lặp khi count bằng 3
    }
}

Trả về giá trị từ `loop`

Bạn có thể dùng `break` kèm theo một giá trị để gán kết quả của vòng lặp cho một biến:

let mut count = 0;
let result = loop {
    count += 1;
    if count == 10 {
        break count * 2; // Trả về giá trị 20
    }
};

2. Vòng lặp có điều kiện: `while`

Vòng lặp `while` sẽ chạy mã nguồn chừng nào điều kiện còn là `true`.

let mut number = 3;
while number != 0 {
    println!("{}!", number);
    number -= 1;
}
println!("BẮT ĐẦU!");

3. Vòng lặp duyệt tập hợp: `for`

Đây là vòng lặp phổ biến và an toàn nhất trong Rust, thường dùng để duyệt qua các phần tử của một mảng hoặc một dải số.

Duyệt qua mảng:

let fruits = ["táo", "chuối", "cam"];
for fruit in fruits {
    println!("Tôi thích quả {}", fruit);
}

Duyệt qua một dải số (Range):

for number in 1..4 { // Chạy từ 1 đến 3
    println!("Số: {}", number);
}

4. Break và Continue

  • `break`: Thoát ngay lập tức khỏi vòng lặp.
  • `continue`: Bỏ qua các câu lệnh còn lại trong lượt lặp hiện tại và chuyển sang lượt lặp tiếp theo.

Lời kết Bài 7

Hiểu rõ cách vận hành của các vòng lặp sẽ giúp bạn xử lý các tập dữ liệu lớn một cách hiệu quả. Ở bài sau, chúng ta sẽ tìm hiểu về Mảng (Arrays)Vector – những cấu trúc dữ liệu dùng để lưu trữ danh sách trong Rust.

Hẹn gặp lại các bạn!

Share URL copied

Leave a comment

Leave a Reply

Your email address will not be published. Required fields are marked *

Active0
AI3
AI & Automation10

Exclusives

Lifestyle

Related Articles

Tự học Rust – Bài 20: Concurrency – Đa luồng an toàn tuyệt đối

Khám phá cách Rust xử lý lập trình đa luồng mà không...

Tự học Rust – Bài 19: Con trỏ thông minh (Smart Pointers)

Vượt xa các tham chiếu thông thường với Smart Pointers: Box, Rc...

Tự học Rust – Bài 18: Lifetimes – Đảm bảo tham chiếu hợp lệ

Lifetimes là gì? Tại sao Rust cần chúng? Tìm hiểu cách trình...

Tự học Rust – Bài 17: Generics – Viết mã nguồn linh hoạt

Sử dụng Generics trong Rust để tạo ra các hàm và cấu...