• Chào bạn, hãy đăng ký hoặc đăng nhập để tham gia cùng bọn mình và sử dụng được đầy đủ chức năng của diễn đàn :).
anhcraft

Java Java cơ bản #18: If - else if - else

anhcraft

Thành viên BQT
DEVELOPER
THÀNH VIÊN
Tham gia
18/09/2016
Bài viết
3,165
If/else if/else là cấu trúc điều khiển. (Nếu ... thì ...)

Cú pháp:
Java:
if(<điều kiện>) <khối lệnh/dòng code>;
else if(<điều kiện>) <khối lệnh/dòng code>;
else <khối lệnh/dòng code>;

Cấu trúc này có thể dùng với khối lệnh (nhiều dòng) hoặc một dòng lệnh.
Điều kiện ở đây phải mang kiểu dữ liệu là Boolean.

Một số lưu ý quan trọng:
- Luôn luôn phải có If
- Luôn luôn theo thứ tự: If rồi tới Else if rồi tới Else
- Chỉ có một If và một Else, nhưng có thể có nhiều Else if
- If có thể đi với Else if, đi với Else, đi chung với cả hai, hoặc đứng một mình

Ví dụ cho các lưu ý trên:
Java:
if(true){
}
else if(true){
}

if(true){
} else {
}

if(true){
} else if(false){
} else if(false){
} else {
}

Cách mà if - else if - else hoạt động:
if luôn luôn đứng trước nên Java sẽ kiểm tra If trước. Nếu điều kiện là true thì chạy code, nếu là false thì tiếp tục kiểm tra else If (nếu có)
Gỉa sử Else if có, Java sẽ check từng Else if từ trên xuống dưới (theo quy tắc trên)
Nếu if hoặc else if vẫn trả về false thì chạy code trong Else (nếu có)
Các bạn có thể xem hình dưới cho dễ hình dung!
ZqKIIY6.png

Ví dụ:
YokQWul.png


Vì biểu thức 1+1 == 2 trả về true nên code bên trong if được chạy.

bAt4v6b.png


Nếu sửa lại, 1 + 1 == 1 sẽ trả về false nên code trong if không được chạy.

Một ví dụ khác!

ONG4vlK.png


Các bạn chú ý ở trên, đằng sau if mình không dùng khối lệnh mà mình chỉ dùng một dòng lệnh (đó là lý do vì sao không có dấu ngoặc nhọn)
Code trên mình sử dụng Scanner. Scanner là một Class giúp bạn đọc dữ liệu từ một input cho trước (input ở đây là System.in, lấy từ console)
hàm Scanner#hasNextInt() kiểm tra xem nội dung mà mình đã nhập từ console có phải là số nguyên (int) không. Nếu có, if sẽ chạy code để in ra nội dung mình đã nhập.
Vậy giả sử mình không nhập số thì sao?
lWX6OSF.png

Như bạn thấy, Java đã không chạy code mà mình đặt trong if nữa :v

Gỉa sử nếu muốn báo lỗi nếu người dùng nhập nội dung không phải là số nguyên thì mình lm như sau:
QFFII5q.png


Cảm thấy báo lỗi vẫn chưa rõ :v? Hãy dùng tiếp else if
3oONewB.png


OK xong ~
Ai thắc mắc thì cmt :D
 
Similar content Most view Xem thêm
Back
Top Bottom