Câu lệnh rẽ nhánh (if else) trong Java
1. Câu lệnh if
Câu lệnh if là câu lệnh cơ bản nhất trong tất cả các câu lệnh điều khiển (control flow statements). Nó nói với chương trình của bạn để thực hiện một phần mã nhất định chỉ khi một điều kiện được đánh giá là đúng (true).
Dưới đây là cấu trúc của câu lệnh if:
// condition: Điều kiện cần kiểm tra.
if (condition) {
// Làm gì đó tại đây nếu 'condition' là đúng.
}
Hình phía trên minh họa luồng đi (flow) của ứng dụng khi nó bắt gặp một câu lệnh if.
- Chương trình kiểm tra điều kiện (condition).
- Nếu điều kiện đúng (true), các đoạn mã (code) trong khối lệnh của if sẽ được thực thi (execute). Sau đó nó tiếp tục thực thi các mã phía dưới của khối lệnh if.
- Nếu điều kiện sai (false), chương trình sẽ bỏ qua các đoạn mã trong khối lệnh của if, và thực thi các đoạn mã phía dưới khối lệnh if.
Ví dụ:
package com.theblogsnews.develop.java.controlflow;
public class IfExample {
public static void main(String[] args) {
// Khai báo một biến, đại diện cho tuổi của bạn
int age = 30;
System.out.println("Your age: " + age);
// Điều kiện (condition) cần kiểm tra là 'age > 20'
if (age > 20) {
System.out.println("Okey!");
System.out.println("Age is greater than 20");
}
// Các đoạn mã phía dưới khối 'if'.
System.out.println("Done!");
}
}
Chạy ví dụ:
2. Câu lệnh if – else
Lệnh if-else cũng được sử dụng để kiểm tra một điều kiện. Nó sẽ thực thi (execute) khối lệnh if nếu điều kiện là đúng, nếu điều kiện sai thì khối lệnh else sẽ được thực thi.
** if – else **
if( condition ) {
// Làm gì đó tại đây
}
// Ngược lại
else {
// Làm gì đó tại đây
}
Ví dụ:IfElseExample.java
package com.theblogsnews.develop.java.controlflow;
public class IfElseExample {
public static void main(String[] args) {
// Khai báo một biến, đại diện cho tuổi của bạn
int age = 15;
System.out.println("Your age: " + age);
// Điều kiện (condition) cần kiểm tra là 'age > 18'
if (age >= 18) {
System.out.println("Okey!");
System.out.println("You are accepted!");
} else {
System.out.println("Sorry!");
System.out.println("Age is less than 18");
}
// Các đoạn mã phía sau khối 'if' và khối 'else'.
System.out.println("Done!");
}
}
Chạy ví dụ:
3- Câu lệnh if – else if – else
Cấu trúc của một câu lệnh if – else if – else là:
if(condition 1) {
// Làm gì đó tại đây
} else if(condition 2) {
// Làm gì đó tại đây
} else if(condition 3) {
// Làm gì đó tại đây
}
// Ngược lại
else {
// Làm gì đó tại đây
}
package com.theblogsnews.develop.java.controlflow;
public class ElseIfEx1 {
public static void main(String[] args) {
// Khai báo một số kiểu int (Số nguyên 32 bit)
// Đại diện cho điểm thi (score) của bạn
int score = 20;
System.out.println("Your score = " + score);
// Nếu điểm số nhỏ hơn 50
if (score < 50) {
System.out.println("You are not pass");
}
// Ngược lại nếu score lớn hơn hoặc bằng 50 và nhỏ hơn 80.
else if (score >= 50 && score < 80) {
System.out.println("You are pass");
}
// Trường hợp còn lại (Nghĩa là lớn hơn hoặc bằng 80)
else {
System.out.println("You are pass, good student!");
}
}
}
Kết quả:
- Your score = 70
- You are pass
Thay đổi giá trị của biến “score” trong ví dụ trên và chạy lại class ElseIfEx1:
1 | int score = 20 ; |
- Your score = 20
- You are not pass
4. Giá trị boolean
boolean là một kiểu dữ liệu, nó chỉ có 2 giá trị true hoặc false (Đúng hoặc sai).Tạo lớp BooleanExample:
package com.theblogsnews.develop.java.controlflow;
public class BooleanExample {
public static void main(String[] args) {
// Khai báo một biến kiểu boolean
boolean value = true;
// Nếu value là true
if (value == true) {
System.out.println("It's true");
}
// Ngược lại
else {
System.out.println("It's false");
}
// Với kiểu boolean, bạn cũng có thể viết
// With boolean type, you can also write
if (value) {
System.out.println("It's true");
}
// Ngược lại
else {
System.out.println("It's false");
}
}
}
5. Các toán tử tham gia vào biểu thức điều kiện
Dưới đây là danh sách các toán tử, nó thường đươc sử dụng trong một biểu thức điều kiện (conditional expression).
- > Lớn hơn
- < Nhỏ hơn
- >= Lớn hơn hoặc bằng
- <= Nhỏ hơn hặc bằng
- && Và
- || hoặc
- == So sánh bằng
- != So sánh khác nhau
- ! Phủ định
Ví dụ:
package com.theblogsnews.develop.java.controlflow;
public class ElseIfExample2 {
public static void main(String[] args) {
// Khai báo một biến kiểu int, đại diện cho tuổi của bạn.
int age = 20;
// Kiểm tra tuổi nhỏ hơn hoặc bằng 17
if (age <= 17) {
System.out.println("You are 17 or younger");
}
// Kiểm tra tuổi bằng 18
else if (age == 18) {
System.out.println("You are 18 year old");
}
// Kiểm tra tuổi lớn hơn 18 và nhỏ hơn 40
else if (age > 18 && age < 40) {
System.out.println("You are between 19 and 39");
}
// Trường hợp còn lại (Lớn hơn hoặc bằng 40)
else {
// Một lệnh 'if' lồng bên trong.
// Kiểm tra tuổi khác 50.
if (age != 50) {
System.out.println("You are not 50 year old");
}
// Lệnh phủ định tuổi bằng 50, nghĩa là khác 50.
if (!(age == 50)) {
System.out.println("You are not 50 year old");
}
// Nếu tuổi là 60 hoặc 70
if (age == 60 || age == 70) {
System.out.println("You are 60 or 70 year old");
}
}
}
}
Chạy ví dụ: You are between 19 and 39
Bạn có thể thay đổi giá trị của biến ‘age’ và chạy lớp ElseIfExample2 và xem các kết quả