Trong bài viết này, bạn sẽ học cách sử dụng hai câu lệnh điều kiện: if và if… else để điều khiển luồng thực thi chương trình của bạn.
Trong lập trình, bạn có thể muốn thực hiện các hành động khác nhau dựa trên điều kiện được chỉ định là true
hoặc false
(chỉ được biết trong thời gian chạy). Đối với những trường hợp như vậy, các câu lệnh luồng điều khiển được sử dụng.
Viết nhanh câu lệnh if (if-then)
Cú pháp của câu lệnh if trong Swift là:
if biểu thức (// câu lệnh)
- Đây
expression
là một biểu thức boolean (trả về một trong haitrue
hoặcfalse
). - Nếu
expression
được đánh giá làtrue
, các câu lệnh bên trong khối mã củaif
được thực thi. - Nếu
expression
được đánh giá thànhfalse
, các câu lệnh bên trong khối mã củaif
sẽ bị bỏ qua khỏi quá trình thực thi.
Nếu câu lệnh hoạt động như thế nào?
Ví dụ 1: Swift if Statement
let number = 10 if number> 0 ( print("Number is positive.") ) print("This statement is always executed.")
Khi bạn chạy chương trình, đầu ra sẽ là:
Số là dương. Câu lệnh này luôn được thực thi.
Trong chương trình trên, chúng ta đã khởi tạo hằng số với giá trị 10 và biểu thức kiểm tra number> 0
đánh giá là true. Do đó, câu lệnh print("Number is positive.")
bên trong phần thân của câu lệnh if được thực hiện mà kết quả đầu ra là Số dương. trong bảng điều khiển…
Bây giờ, hãy thay đổi giá trị của số thành số nguyên âm. Hãy nói -5
. Đầu ra trong trường hợp này sẽ là:
Câu lệnh này luôn được thực thi.
Khi số được khởi tạo với giá trị -5, biểu thức kiểm tra number> 0
được đánh giá là sai. Do đó, trình biên dịch Swift bỏ qua việc thực thi phần thân của câu lệnh if.
Viết nhanh câu lệnh if… else (if-else)
Câu lệnh if thực thi một đoạn mã nhất định nếu biểu thức kiểm tra được đánh giá là true. Câu lệnh if có thể có câu lệnh else tùy chọn. Mã bên trong phần thân của câu lệnh else được thực thi nếu biểu thức kiểm tra là sai.
Cú pháp của câu lệnh if-else là:
if biểu thức (// câu lệnh) else (// câu lệnh)
Câu lệnh if… else hoạt động như thế nào?
Ví dụ 2: Câu lệnh Swift if else
let number = 10 if number> 0 ( print("Number is positive.") ) else ( print("Number is not positive.") ) print("This statement is always executed.")
Khi bạn chạy chương trình, đầu ra sẽ là:
Số là dương. Câu lệnh này luôn được thực thi
Trong chương trình trên, hằng số được khởi tạo với giá trị 10 và biểu thức kiểm tra number> 0
đánh giá là true
. Do đó, câu lệnh print("Number is positive.")
bên trong phần thân của câu lệnh if được thực thi.
Kết quả đầu ra này là số dương. trong bảng điều khiển và các câu lệnh bên trong phần thân của else bị bỏ qua khỏi quá trình thực thi.
Bây giờ, thay đổi giá trị của số thành một số âm. Giả sử -5. Đầu ra trong trường hợp này sẽ là:
Số không dương. Câu lệnh này luôn được thực thi.
Khi số là -5, biểu thức kiểm tra number> 0
được đánh giá là false
. Trong trường hợp này, các câu lệnh bên trong phần thân của else được thực thi và các câu lệnh bên trong phần thân của if bị bỏ qua khỏi quá trình thực thi.
Bạn cũng có thể thay thế câu lệnh if… else bằng toán tử bậc ba trong Swift, đây là loại ký hiệu viết tắt của câu lệnh if… else.
Viết nhanh câu lệnh if… else… if (if-else-if)
Trong Swift, cũng có thể thực thi một khối mã trong số nhiều khối mã. Vì vậy, bạn có thể sử dụng if… else… if bậc thang như:
Cú pháp của câu lệnh if-else-if là:
if biểu thức1 (// câu lệnh) else if biểu thức2 (// câu lệnh) else if biểu thức3 (// câu lệnh)… else (// câu lệnh)
Các câu lệnh if được thực hiện từ trên xuống dưới. Ngay sau khi biểu thức kiểm tra là true, các mã bên trong phần thân của câu lệnh if đó sẽ được thực thi. Sau đó, việc điều khiển chương trình nhảy ra bên ngoài if-else-if bậc thang.
Nếu tất cả các biểu thức kiểm tra là false
, mã bên trong phần thân của khác được thực thi
Ví dụ 3: Swift if… else… if Câu lệnh
Chương trình sau đây kiểm tra xem số là số dương, số âm hay số 0.
let number = 0; if number> 0 ( print("Number is positive.") ) else if (number < 0) ( print("Number is negative.") ) else ( print("Number is 0.") )
Khi bạn chạy chương trình, đầu ra sẽ là:
Số là 0.
Trong chương trình trên, hằng số được khởi tạo với giá trị 0. Vì câu lệnh if được thực hiện từ trên xuống dưới nên nó sẽ kiểm tra biểu thức number> 0
được đánh giá là false
.
Sau đó, nó kiểm tra biểu thức tiếp theo number < 0
cũng được đánh giá là false.
Do đó, câu lệnh print("Number is 0.")
bên trong phần thân của else được thực thi với kết quả là Số là 0. trong bảng điều khiển.
Swift lồng nhau Câu lệnh if… else
Có thể có câu lệnh if… else bên trong câu lệnh if… else trong Swift. Nó được gọi là câu lệnh if… else lồng nhau.
Bạn cũng có thể thay thế câu lệnh if… else lồng nhau bằng switch trong Swift, đôi khi là một cách tiếp cận đơn giản hơn khi xử lý một số tùy chọn khả thi.
Cú pháp của câu lệnh if-else lồng nhau là:
if biểu thức1 (if biểu thức2 (// câu lệnh) else (// câu lệnh)) else (if biểu thức3 (// câu lệnh) else (// câu lệnh))
Ví dụ 4: Câu lệnh if… else lồng nhau
Đây là một chương trình để tìm số lớn nhất trong 3 số bằng cách sử dụng câu lệnh if else lồng nhau.
let n1 = -1.0, n2 = 4.5, n3 = -5.3 if n1>= n2 ( if n1>= n3 ( print("Largest number is ", n1) ) else ( print("Largest number is ", n3) ) ) else ( if n2>= n3 ( print("Largest number is ", n2) ) else ( print("Largest number is ", n3) ) )
Khi bạn chạy chương trình trên, kết quả đầu ra sẽ là:
Số lớn nhất là 4,5