Bài đăng nổi bật



Giới thiệu về vòng lặp
Giới thiệu vòng lặp
Sự lặp lại về cơ bản là khái niệm làm một cái gì đó theo cách lặp đi lặp lại. Trong lập trình, thông thường bạn sẽ sử dụng sự lặp lại để lặp lại các mục trong bộ sưu tập hoặc thực hiện cùng một nhiệm vụ nhiều lần để tạo hiệu ứng mong muốn trong chương trình của bạn.
Visual C# cung cấp một số cấu trúc tiêu chuẩn được gọi là các vòng lặp mà bạn có thể sử dụng để thực hiện logic lặp. Nếu bạn đã biết các ngôn ngữ lập trình khác, bạn có thể nhận ra các vòng lặp, trong khi các vòng lặp và thực hiện các vòng lặp. C# hỗ trợ cả ba câu lệnh lặp này.

Vòng lặp for
Vòng lặp for
Vòng lặp for thực thi một khối mã nhiều lần cho đến khi biểu thức điều kiện cho kết quả là false. Bạn có thể định nghĩa một vòng lặp for như sau.
for ([initializers]; [condition]; [iterator])
{
   // code to repeat goes here
}
Phần [khởi tạo] được sử dụng để khởi tạo giá trị làm bộ đếm cho vòng lặp. Trên mỗi lần lặp, vòng lặp kiểm tra giá trị của bộ đếm nằm trong phạm vi để thực thi vòng lặp for, được chỉ định trong phần [điều kiện], và nếu vậy, thực thi phần thân của vòng lặp. Khi kết thúc mỗi lần lặp vòng lặp, phần [iterator] chịu trách nhiệm tăng bộ đếm vòng lặp.
Ví dụ mã sau đây cho thấy cách sử dụng vòng lặp for để thực thi khối mã 10 lần.
//for Loop
for (int i = 0 ; i < 10; i++)
{
    // Code to execute.
}
Trong ví dụ này, i = 0;là khởi tạo, i < 10; là điều kiện, và i++ là trình vòng lặp.
Vòng Lặp For Each
Mặc dù vòng lặp for rất dễ sử dụng, nó có thể đưa ra một số thách thức, tùy thuộc vào tình huống. Ví dụ, xem xét việc lặp lại qua một bộ sưu tập hoặc một mảng các giá trị. Bạn sẽ cần biết có bao nhiêu phần tử trong bộ sưu tập hoặc mảng. 

Trong nhiều trường hợp bạn sẽ biết điều này, nhưng đôi khi bạn có thể có các bộ sưu tập hoặc mảng động và không có kích thước tại thời gian biên dịch. Nếu kích thước của bộ sưu tập hoặc mảng thay đổi trong thời gian chạy, nó có thể là một lựa chọn tốt hơn để sử dụng vòng lặp foreach.
Đoạn code sau minh hoạ cho việc sử dụng foreach để duyệt qua một mảng chuỗi. 
//foreach Loop

string[] names = new string[10];

// Process each name in the array.
foreach (string name in names)
{
    // Code to execute.
}

C# xử lý xác định có bao nhiêu mục trong mảng và sẽ dừng thực thi vòng lặp khi kết thúc. Công dụng của vòng lặp foreach vòng lặp có thể giúp ngăn chỉ số ra khỏi giới hạn lỗi trên mảng.

The while Loop
The while Loop
Một vòng lặp while cho phép bạn thực thi một khối mã trong khi một điều kiện đã cho là đúng. Ví dụ: bạn có thể sử dụng vòng lặp while để xử lý dữ liệu nhập của người dùng cho đến khi người dùng cho biết họ không còn dữ liệu để nhập. 

Vòng lặp có thể tiếp tục nhắc người dùng cho đến khi họ quyết định kết thúc tương tác bằng cách nhập giá trị sentinel. Giá trị sentinel chịu trách nhiệm kết thúc vòng lặp.
Ví dụ mã sau đây cho thấy cách sử dụng vòng lặp while.
//while Loop
string response = PromptUser();
while (response != "Quit")
{
    // Process the data.
    response = PromptUser();
}

Bắt buộc phải bao gồm các response = PromptUser(); phía trong các dấu ngoặc nhọn. Việc không đặt cái này vào thân vòng lặp sẽ dẫn đến một vòng lặp vô hạn vì giá trị sentinel không bao giờ có thể thay đổi.
Vòng lặp do
Vòng lặp do
Vòng lặp do, đôi khi cũng được gọi là một vòng lặp do…while, rất giống với một vòng lặp while, ngoại trừ một vòng lặp do sẽ luôn luôn thực thi phần thân của vòng lặp ít nhất một lần. Trong một vòng lặp while, nếu điều kiện sai từ đầu, phần thân của vòng lặp sẽ không bao giờ thực thi.
Bạn có thể muốn sử dụng một vòng lặp do nếu bạn biết rằng mã sẽ chỉ thực thi để đáp lại lời nhắc của người dùng về dữ liệu. Trong kịch bản này, bạn biết rằng ứng dụng sẽ cần xử lý ít nhất một phần dữ liệu và do đó có thể sử dụng vòng lặp do.
Ví dụ mã sau đây cho thấy việc sử dụng vòng lặp do.
//do Loop

do
{
    // Process the data.
    response = PromptUser();

} while (response != "Quit");

Post a Comment

أحدث أقدم