Ở bài học trước mình đã cùng tìm hiểu về vòng lặp trong c# đó là vòng lặp for
, while
, do-while
. Làm sao để thoát khỏi vòng lặp khi chưa kết thúc vòng lặp, làm sao để bỏ qua lần lặp nào đó.
Trong c# có từ khóa break
và continue
cho phép mình thực hiện những điều trên.
Vậy ý nghĩa của break
và continue
là gì? Sự khác nhau giữa break
và continue
như thế nào? Mình cùng xem tiếp nội dung tiếp theo
1. Câu lệnh break
Trong c# break
dùng để ngắt vòng lặp (for
, while
, do-while
) hoặc câu lệnh switch-case
. Trong trường hợp vòng lặp lồng nhau thì nó chỉ ngắt vòng lặp bên trong nhất.
Bài viết này được đăng tại [kiso.vn]
break;
Chúng ta hãy xem một ví dụ đơn giản về câu lệnh break được sử dụng bên trong vòng lặp.
using System; namespace ConsoleApp2 { class Program { static void Main(string[] args) { Console.WriteLine("Vong lap khong co break"); for (int i = 1; i <= 5; i++) { Console.WriteLine("Gia tri i = " + i); }; Console.WriteLine("Vong lap co break"); for (int i = 1; i <= 5; i++) { if (i == 3) { break; } Console.WriteLine("Gia tri i = " + i); }; Console.ReadKey(); } } }
Và kết quả sau khi thực thi đoạn code trên:
Chúng ta cùng xem tiếp câu lệnh break bên trong vòng lặp lồng nhau:
using System; namespace ConsoleApp2 { class Program { static void Main(string[] args) { for (int i = 1; i <= 5; i++) { Console.WriteLine("Vong lap thu i = " + i); for (int j = 1; j <= 5; j++) { if (j == 3) { break; } Console.WriteLine(" Gia tri j = " + j); }; Console.WriteLine("n"); }; Console.ReadKey(); } } }
Và kết quả sau khi thực thi đoạn code trên:
2. Câu lệnh continue
Câu lệnh continue
trong c# được sử dụng để tiếp tục vòng lặp.Trong trường hợp vòng lặp lồng nhau, nó chỉ tiếp tục vòng lặp bên trong nhất.
continue;
using System; namespace ConsoleApp2 { class Program { static void Main(string[] args) { for (int i = 1; i <= 5; i++) { if (i == 3) { continue; } Console.WriteLine("Gia tri i = " + i); } Console.ReadKey(); } } }
Ở ví dụ trên khi gặp câu lệnh continue
, nó sẽ không thực thi đoạn code phía sau bên trong vòng lặp và tiếp tục vòng lặp tiếp theo.
Kết quả sau khi thực thi đoạn code trên:
Chúng ta cùng xem tiếp ví dụ về continue
trong vòng lặp lồng nhau.
using System; namespace ConsoleApp2 { class Program { static void Main(string[] args) { for (int i = 1; i <= 3; i++) { Console.WriteLine("Vong lap thu i = " + i); for (int j = 1; j <= 3; j++) { if (i == 2 && j == 2) { continue; } Console.WriteLine(" gia tri i = " + i + ", j = " + j); } Console.WriteLine("n"); } Console.ReadKey(); } } }
Và kết quả sau khi thực thi đoạn code trên:
3. So sánh câu lệnh break và continue
Mình cùng so sánh điểm giống và khác nhau giữa 2 câu lệnh break
và continue
như sau:
Giống nhau
- Cả hai câu lệnh
break
vàcontinue
trong c# được cung cấp để thay đổi luồng chạy bình thường của chương trình.
Khác nhau
break | continue |
Câu lệnh break có thể xuất hiện trong cả câu lệnh switch và vòng lặp (for , while , do-while ). | Câu lệnh continue chỉ xuất hiện ở vòng lặp (for , while , do-while ) |
Câu lệnh break dùng để thoát khỏi vòng lặp | Câu lệnh continue dùng để bỏ qua vòng lặp hiện tại và đi tiếp vòng lặp tiếp theo |
Câu lệnh break gây ra sự kết thúc sớm của vòng lặp | Câu lệnh continue gây ra sự thực thi sớm của vòng lặp tiếp theo |
4. Lời kết
Như vậy là mình đã cùng tìm hiểu xong 2 câu lệnh thường hay sử dụng trong c# đó là break
và continue
. Chúng ta chỉ cần nhớ đơn giản là break
dùng để thoát khỏi vòng lặp, còn continue
dùng để bỏ qua vòng lặp hiện tại và đi đến vòng lặp tiếp theo.
Cám ơn các bạn đã đọc bài viết
Bài viết liên quan
[CSF-2] Một số thiết lập CSF, LFD
Hôm nay mình sẽ thực hiện một số thiết lập trên CSF Mở file config để sửa đổi một số tính năng dưới /etc/csf/csf.conf Nội dung chính1. Câu lệnh break2. Câu lệnh continue3. So sánh...
[CSF-1] Tăng bảo mật Server với ConfigServer Firewall (CSF)
Nội dung chính1. Câu lệnh break2. Câu lệnh continue3. So sánh câu lệnh break và continue4. Lời kết1. Khái niệm CSF: CSF (ConfigServer & Firewall) là một bộ ứng dụng hoạt động trên Linux như...
Sử dụng SSH Key với Gitlab và Github
Bài viết này mình sẽ hướng dẫn các bạn tạo ssh key cho Gitlab và Github SSH là gì? Secure Socket Shell là một giao thức mạng dùng để thiết lập kết nối mạng một...
Directory traversal vulnerabilities (phần 4)
Nội dung chính1. Câu lệnh break2. Câu lệnh continue3. So sánh câu lệnh break và continue4. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal (tiếp) 5. Bypass lỗ hổng khi trang...
Directory traversal vulnerabilities (phần 3)
Nội dung chính1. Câu lệnh break2. Câu lệnh continue3. So sánh câu lệnh break và continue4. Lời kếtV. Phân tích và khai thác các lỗ hổng Directory traversal 1. Lỗ hổng xảy ra khi sử...
Directory traversal vulnerabilities (phần 2)
Nội dung chính1. Câu lệnh break2. Câu lệnh continue3. So sánh câu lệnh break và continue4. Lời kếtIII. Vì sao lỗ hổng Directory traversal xuất hiện? Với mỗi ngôn ngữ lập trình khác nhau, điểm...