Các Cấu Trúc điều Khiển If For While Repeat Trong Swift

  • Lệnh if
  • Lệnh switch/case
  • Vòng lặp while/repeat
  • Vòng lặp for .. in
  • Điều hướng continue
  • Điều hướng break
  • Điều hướng fallthrough

Lệnh rẽ nhánh if trong Swift

Một cấu trúc thi hành có điều kiện nghĩa là cấu trúc đó sẽ thi hành khối lệnh tương ứng với điều kiện cụ thể nào đó. Vì dụ như nếu có lỗi (điều kiện xảy ra) thì hiện thị thông báo lỗi (khối lệnh thi hành). Lệnh rẽ nhánh if, switch là trường hợp cụ thể áp dụng cơ chế này.

Khối lệnh trong Swift

Tập hợp các câu lệnh gom lại trong dấu { ... } gọi là khối lệnh. Ví dụ:

{ // ... các lệnh trong khối }

Lệnh if đơn giản: nếu điều kiện đúng thì thi hành khối lệnh, cú pháp như sau

if điều_kiện { //Các lệnh sẽ thi hành nếu điều_kiện là đúng } Ví dụ var foundFile = true; if (foundFile) { print("Found file") }

Lệnh if phức tạp, lồng nhau - thi hành cấu trúc lệnh dạng - nếu điều kiện kiểm tra là đúng thì thi hành một khối lệnh 1, nếu sai thi hành khối lệnh 2

if điều_kiện { //Khối lệnh 1 - thi hành nếu điều_kiện là true } else { //Khối lệnh 2 - thi hành nếu điều_kiện là false }

Có thể lồng nhau nhiều lệnh if để kiểm tra nhiều điều kiện, cấu trúc

if điều_kiện1 { //Khối lệnh 1 - thi hành nếu điều_kiện1 là true } else if điều_kiện2 { //Khối lệnh 2 - thi hành nếu kiều_kiện1 là false, điều_kiện2 là true } else { //Khối lệnh 3 - thi hành nếu kiều_kiện2 là false, điều_kiện2 là false } //Số lệnh if lồng vào không giới hạn

Rẽ nhiều nhánh bằng lệnh switch / case

Lệnh này sẽ kiểm tra giá trị biểu thức, so sánh với mỗi trường hợp (case) - bằng trường hợp nào thì thi hành khối lệnh trường hợp đó. Cú pháp như sau:

switch biểu_thức { case giá_trị_1: //...Code thi hành nếu biểu_thức có giá trị là: giá_trị_1 case giá_trị_2: //...Code thi hành nếu biểu_thức có giá trị là: giá_trị_2 default: //...Code thi hành nếu biểu_thức bằng giá trị nào trong các case }

Bạn lưu ý có dấu : ở phần case, trong switch không hạn chế số lượng case. Từ khóa default: nhằm định nghĩ code mà không có case nào phù hợp, luôn để ở cuối. Không cần từ khóa break ở cuối mỗi case

var wday = "Mon"; switch wday { case "Mon": print("Thứ 2") case "Tue": print("Thứ 3") default: print("Không biết") }

Kiệm tra điều kiện phức tạp với where

Ví dụ bạn sử dụng Tuple, để truyền nhiều giá trị trong biểu thức của switch, nếu muốn kiểm tra các giá trị đó - tùy thuộc vào các giá trị này mà có các case khác nhau, để làm điều này có thể tham khảo đoạn code kết hợp switch với kiểm tra điều kiện where như sau:

//Khai báo một Tuple hai giá trị var myNumbers = (10, 20) switch myNumbers { case let (x, y) where x > y: print("Số hạng 1 lớn hơn số hạng 2") case let (x, y) where x < y: print("Số hạng 1 nhỏ hơn số hạng 2") case let (x,y): print("Hai số bằng nhau") }

Trong ví dụ trên, case khởi tạo hằng tạm thời tên x, y - giá trị khởi tạo cho nó là từ giá trị phần tử Tuple myNumbers, sau để điều kiện kiểm tra viết sau từ khóa where, nếu biểu thức sau where là true thì thi hành case này

Vòng lặp while và repeat trong Swift

while

Vòng lặp while: kiểm tra điều_kiện, nếu đúng chạy khối lệnh của while - nếu sai bỏ qua. Sau mỗi lần chạy kiểm tra lại điều kiện, nếu đúng chạy tiếp. Cú pháp như sau:

while điều_kiện { //Lệnh chạy } var month = 1; while month =7 } } //In ra các số: (bỏ qua 5) 0 1 2 3 4 6 7

Trong câu lệnh switch thì break luôn được dùng với default để cho biết kết thucs switch khi không có case nào phù hợp:

var W = "Mon" switch W { case "Mon": print("Thứ 2") case "Tue": print("Thứ 3") default: break }

Điều hướng fallthrough

Trong câu lệnh rẽ nhánh switch, thì khi khối lệnh phù hợp được thi hành, nghĩa là case nào phù hợp thì thi hành các lệnh trong case đó và bỏ qua các case phía dưới. Điều này khác với swich trong PHP, C++ ... khi mà các case phía dưới vẫn được thi hành cho đến khi gặp break.

Nếu muốn switch ở Swift cũng ứng xử như vậy, thì cuối case cần thêm khóa fallthrough

let sokiemtra = 5 var dienta = "Số \(sokiemtra) là" switch sokiemtra { case 2, 3, 5, 7, 11, 13, 17, 19: dienta += " số nguyên tố, và cũng là" //Chỉ thị các case phía sau được chạy fallthrough default: dienta += " số nguyên." } print(dienta) //In ra: Số 5 là số nguyên tố, và cũng là số nguyên. Mục lục bài viết Lệnh ifLệnh switch/caseVòng lặp while/repeatVòng lặp for .. inĐiều hướng continueĐiều hướng breakĐiều hướng fallthrough ĐĂNG KÝ KÊNH, XEM CÁC VIDEO TRÊN XUANTHULAB Đăng ký nhận bài viết mới

Từ khóa » Cách Sử Dụng Repeat