Câu Lệnh if-else (if-else Statement)

Câu lệnh if-else trong Java là một trong những cấu trúc điều khiển luồng cơ bản nhất. Nó cho phép chương trình thực thi một phần mã nhất định dựa trên kết quả của một điều kiện cụ thể. Có 3 kiểu câu lệnh if-else trong Java: Câu lệnh if-then (Nếu-Thì), Câu lệnh if-else (Nếu-Thì-Nếu Không), Câu lệnh if-else-if (Nếu-Thì-Nếu Lại).

Cách xử lý điều kiện và thực thi khối lệnh trong câu lệnh điều kiện Java - minh họa
Ảnh mô tả cách xử lí điều kiện và thực thi khối lệnh của câu lệnh điều kiện.

Ⅰ. Câu lệnh if-then (Nếu-thì)

Chức năng: Mệnh đề if được dùng để kiểm tra một điều kiện và thực thi khối mã bên trong nếu điều kiện cho trước là đúng (true). Bạn sử dụng cú pháp sau:

Cú pháp

if (điều_kiện) {
    // Khối lệnh thực thi nếu điều kiện đúng
}

Giải thích cú pháp:

↳ if: Từ khóa if đánh dấu sự bắt đầu của câu lệnh điều kiện.

↳ (điều_kiện): Là một biểu thức Boolean (biểu thức logic) trả về giá trị true hoặc false.

↳ { }: Khối ngoặc nhọn bao gồm các lệnh sẽ được thực thi nếu điều kiện được đánh giá là đúng (true).

Ví dụ: Main.java

public class Main {
    public static void main(String[] args) {
        int number = 10;
        
        // Kiểm tra điều kiện (if): nếu 10 chia 2 dư 0
        if (number % 2 == 0) {
            // Thực hiện nếu điều kiện đúng (then): 10 chia hết cho 2
            System.out.println(number + " chia hết cho 2");
        }
    }
}

Kết quả của chương trình là:

10 chia hết cho 2

Chú ý về ngoặc nhọn:

Mở ngoặc nhọn ({) và đóng ngoặc nhọn (}) là tùy chọn, miễn là khối lệnh "then" chỉ chứa một lệnh.

Ví dụ: Main.java

public class Main {
    public static void main(String[] args) {
        int number = 10;
        // Giống như trên, nhưng bỏ ngoặc nhọn
        // Kiểm tra điều kiện (if): nếu 10 chia 2 dư 0

        if (number % 2 == 0)
        // Thực hiện nếu điều kiện đúng (then): 10 chia hết cho 2
        System.out.println(number + " chia hết cho 2");   
    }
}

Kết quả của chương trình là:

10 chia hết cho 2

Việc sử dụng hoặc bỏ qua ngoặc nhọn phụ thuộc vào sở thích cá nhân của lập trình viên. Tuy nhiên, bỏ qua ngoặc nhọn có thể khiến code dễ bị lỗi hơn. Nếu sau này thêm một lệnh thứ hai vào khối "then", bạn có thể quên thêm ngoặc nhọn cần thiết. Điều này sẽ dẫn đến lỗi mà trình biên dịch không thể bắt được.

Ⅱ. Câu lệnh if-else (Nếu-Thì-Nếu Không)

Chức năng: Mệnh đề if-else là một dạng mở rộng của câu lệnh if, cung cấp hai nhánh thực thi:

Nhánh if: Thực thi một khối mã nếu điều kiện được đánh giá là đúng (true).

Nhánh else: Thực thi một khối mã khác nếu điều kiện được đánh giá là sai (false).

Cú pháp

if (điều_kiện) {
    // Khối lệnh thực thi nếu điều kiện đúng
} else {
    // Khối lệnh thực thi nếu điều kiện sai
}

Giải thích cú pháp:

↳ Cấu trúc tương tự như câu lệnh if, nhưng có thêm nhánh else.

↳ else: Từ khóa đánh dấu sự bắt đầu của nhánh thực thi khi điều kiện if là false.

Ví dụ: Main.java

public class Main {
    public static void main(String[] args) {
        int age = 16;

        if (age >= 18) {
            System.out.println("Bạn đủ tuổi bầu cử.");
        } else {
            System.out.println("Bạn chưa đủ tuổi bầu cử.");
        }
    }
}

Kết quả của chương trình là:

Bạn chưa đủ tuổi bầu cử.

Ⅲ. Câu lệnh if-else-if (Nếu-Thì-Nếu-Lại)

Chức Năng: Mệnh đề if-else-if là một dạng mở rộng nâng cao của câu lệnh if-else, cung cấp nhiều nhánh thực thi dựa trên nhiều điều kiện khác nhau. Nó cho phép bạn kiểm tra nhiều điều kiện liên tiếp và thực thi khối mã tương ứng cho từng điều kiện được thỏa mãn.

Cú pháp

if (điều_kiện1) {
    // Khối lệnh thực thi nếu điều kiện1 đúng (true)
} else if (điều_kiện2) {
    // Khối lệnh thực thi nếu điều kiện1 sai (false) và điều kiện2 đúng (true)
} else if (điều_kiện3) {
    // ...
} else {
    // Khối lệnh thực thi nếu tất cả điều kiện sai (false)
}

Giải thích cú pháp:

↳ Giống như if-else, nhưng có thể có nhiều nhánh else if.

↳ Mỗi nhánh else if được kiểm tra theo thứ tự từ trên xuống.

↳ Khi một điều kiện if hoặc else if được đánh giá là true, các lệnh tương ứng sẽ được thực thi và các nhánh sau sẽ không được kiểm tra.

↳ Nhánh else chỉ được thực thi nếu tất cả các điều kiện if và else if trước đó đều là false.

Ví dụ: Main.java

public class Main {
    public static void main(String[] args) {
        int diemKiemTra = 76;
        char diemChu;

        if (diemKiemTra >= 90) {
            diemChu = 'A';
        } else if (diemKiemTra >= 80) {
            diemChu = 'B';
        } else if (diemKiemTra >= 70) {
            diemChu = 'C';
        } else if (diemKiemTra >= 60) {
            diemChu = 'D';
        } else {
            diemChu = 'F';
        }
        System.out.println("Điểm: " + diemChu);
    }
}

Kết quả của chương trình là:

Điểm: C

Các lưu ý khi sử dụng câu lệnh if-else

↳ Toán tử so sánh: Các điều kiện trong mệnh đề if, else if thường sử dụng các toán tử so sánh như ==, !=, >, < , ≥, ≤.

↳ Toán tử logic: Bạn có thể kết hợp nhiều điều kiện với nhau bằng các toán tử logic như && (AND), || (OR).

Câu Nói Truyền Cảm Hứng

“Bắt đầu ở đâu không quan trọng, quan trọng là bạn sẵn sàng bắt đầu.” – W. Clement Stone

Không Gian Tích Cực

“Chúc bạn luôn giữ vững niềm tin và sức mạnh để vượt qua mọi thử thách trong cuộc sống.”