Lệnh continue trong Swift
Trong bài này mình sẽ nói đến lệnh continue trong Swift, đây là lệnh dùng để kiểm soát luồng hoạt động của các vòng lặp, nó cho phép bạn bỏ qua một lần lặp nào đó trong Swift.
1. Cú pháp lệnh Continue trong Swift
Khi làm việc với vòng lặp hoặc các câu lệnh kiểm tra điều kiện như if else, có thể bạn muốn bỏ qua một số câu lệnh nào đó bên trong vòng lặp hoặc dừng ngay lập tức.
Nếu dừng ngay lập tức thì có thể sử dụng lệnh Break. Còn nếu muốn bỏ qua một số lệnh phía dưới và tiếp tục lần lặp tiếp theo thì hãy sử dụng lệnh Continue.
Câu lệnh continue dừng việc thực thi các câu lệnh bên trong vòng lặp hoặc một câu lệnh switch. Sau đó nó tiếp tục kiểm tra điều kiện lặp cho lần tiếp theo.
Bài viết này được đăng tại [free tuts .net]
Cú pháp của câu lệnh continue là:
continue
Xem lưu đồ hoạt động dưới đây:
2. Các ví dụ lệnh Continue trong Swift
Bây giờ ta sẽ làm một vài ví dụ cụ thể hơn về cách hoạt động của lệnh continue trong ngôn ngữ lập trình Swift.
Đầu tiên hãy tham khảo khi kết hợp continue trong vòng lặp for.
Continue trong vòng lặp For
for i in 1...5 { if i == 4 { continue } print("i = \(i)") }
Kết quả:
i = 1 i = 2 i = 3 i = 5
Quan sát kết quả cho thấy thiếu đi dòng in ra số 4 i = 4
. Tại sao lại như vậy? Bạn hãy quan sát code sẽ thấy dòng lệnh này đã bỏ qua lần lặp thứ 4 và tiếp tục cho lần lặp thứ 5. Đấy là lý do tại sao nó có in ra giá trị 5.
if i == 4 { continue }
Continue trong vòng lặp While
var intialLevel:Int = -5, finalLevel:Int = 2 var currentLevel:Int = intialLevel while currentLevel < finalLevel { if intialLevel < 0 { print("Level phải lớn hơn hoặc bằng 0") print("Bỏ qua") intialLevel = 0 currentLevel = intialLevel continue //Bỏ qua các đoạn code phía dưới cho lần lặp này } currentLevel += 1 print("Level tiếp theo") } print("Bên ngoài vòng lặp")
Kết quả:
Level phải lớn hơn hoặc bằng 0 Bỏ qua Level tiếp theo Level tiếp theo Bên ngoài vòng lặp
Trong chương trình trên giá trị của intialLevel lúc đầu là -5
, đây là một số âm nên câu lệnh if intialLevel < 0
được chạy, lúc này continue đã bỏ qua các dòng phía dưới.
Continue trong vòng lặp lồng nhau
Tương tự như lệnh break, lệnh continue chỉ có hiệu lực cho vòng lặp hiện tại mà thôi.
for j in 1...2 { for i in 1...5 { if i == 4 { continue } print("i = \(i)") } print("j = \(j)") }
Kết quả:
i = 1 i = 2 i = 3 i = 5 j = 1 i = 1 i = 2 i = 3 i = 5
Trong chương trình trên, continue nằm bên trong lệnh if if i == 4
chỉ bỏ qua việc thực hiện câu lệnh print("i = \ (i)")
của vòng lặp for thứ hai, nó không bỏ qua việc thực hiện vòng lặp bên ngoài for i in 1 ... 5
.
Nếu bạn muốn lệnh continue này bỏ qua cả vòng lặp bên ngoài thì có thể sử dụng thẻ label như hình ảnh minh họa sau:
Continue kết hợp với Label
outerloop: for j in 1...2 { innerloop: for i in 1...5 { if i == 4 { continue outerloop } print("i = \(i)") } print("j = \(j)") }
Dòng continue outerloop
đã giúp chương trình nhảy tới nhãn outerloop
nên kết quả sẽ như sau:
i = 1 i = 2 i = 3 i = 1 i = 2 i = 3
Như vậy là mình đã hướng dẫn xong cách sử dụng lệnh continue trong Swift. Khi làm các ứng dụng thực tế thì lệnh này cũng được sử dụng rất thường xuyên. Cả lệnh Break cũng vậy.