1. if – else
1.1 Khái niệm
- Trong hầu hết các ngôn ngữ lập trình cấu trúc điều khiển if – else sẽ kiểm tra kết quả của 1 điều kiện và dựa vào kết quả đó để thực hiện các hành động tương ứng.
1.2 Cấu trúc
- Ta có cấu trúc if – else đầy đủ như sau:
// Cấu trúc if - else đầy đủ.
if(điều kiện) {
hành động 1
} else {
hành động 2
}
- Ở đây
điều kiệu
bên trong if là một biểu thức toán học có kết quả là kiểu boolean (true/false) - Nếu
điều kiện
đúng (true) thì thực hiệnhành động 1
, ngược lại, điều kiện sai (false) thì thực hiệnhành động 2
.
- Tương tự, ta có cấu trúc if – else if – else:
// Cấu trúc if - else if - else.
if (điều kiện 1) {
hành động 1
} else if (điều kiện 2) {
hành động 2
} else {
hành động 3
}
-
điều kiệu 1
bên trong if là một biểu thức toán học có kết quả là kiểu boolean (true/false) -
Nếu
điều kiện 1
đúng (true) thì thực hiệnhành động 1
, ngược lại,điều kiện 1
sai (false) thì thực hiện kiểm trađiều kiện 2
-
Nếu
điều kiện 2
đúng (true) thì thực hiệnhành động 2
, ngược lại,điều kiện 2
sai (false) thì thực hiệnhành động 3
. -
Tương tự, chúng ta có thêm 2 cấu trúc khác như sau:
// Cấu trúc if khuyết else.
if(điều kiện) {
hành động 1
}
// Cấu trúc if - else lồng nhau.
if(điều kiện 1) {
if (điều kiện 2) {
hành động 1
} else {
hành động 2
}
} else {
hành động 3
}
2. switch – case
2.1 Khái niệm
- Cấu trúc điều khiển switch – case sẽ kiểm tra kết quả của 1 điều kiện và dựa vào kết quả đó để thực hiện các hành động tương ứng.
- Vậy khi nào thì cần dùng switch – case thay vì if – else: Khi mà chúng ta có số trường hợp cần xử lý lớn hơn 3 thì khi đó chúng ta nên sử dụng switch – case để dễ dàng kiểm tra và xử lý.
2.2 Cú pháp
switch (biểu_thức) {
case giá_trị_1:
Lệnh 1;
break;
case giá_trị_2:
Lệnh 2;
break;
...
case giá_trị_n:
Lệnh n;
break;
default:
Lệnh 0;
}
biểu_thức
trả về một giá trị, kết quả là một số nguyên, chuỗi hoặc một ký tự.- Giá_trị_1, giá_trị_2,…, giá_trị_n là các biểu thức hằng, nguyên hoặc ký tự và chúng phải khác nhau.
- Khi mà
biểu thức
trả về mộtgiá trị
thì sẽ thực hiện lệnh bên trongcase
có giá trị tương ứng. - Khi mà
biểu thức
trả vềgiá trị
mà không có trong các case thì sẽ thực hiện lệnh trongdefault
.
- Lệnh break là để nhảy ra khỏi lệnh switch, nếu không có lệnh này cấu trúc switch sẽ duyệt cả các trường hợp phía dưới cho đến hết.
- Khi không sử dụng từ khóa
break
trong mệnh đề switch-case. Điều này có nghĩa là các khối lệnh saucase có giá trị
phù hợp sẽ được thực thi.
Nguồn: viblo.asia