×

Điều kiện if-else và switch-case để điều khiển luồng trong C#

Trong lập trình C#, các câu lệnh điều kiện là một trong những công cụ quan trọng nhất để điều khiển luồng thực thi của chương trình. Hai loại câu lệnh điều kiện phổ biến nhất là if-elseswitch-case. Mỗi loại có những ưu điểm và nhược điểm riêng, vì vậy chọn loại nào phụ thuộc vào tình huống cụ thể mà bạn gặp phải.

Câu lệnh if-else

Câu lệnh if-else giúp kiểm tra một điều kiện nhất định, và nếu điều kiện đó đúng, chương trình sẽ thực hiện một khối mã cụ thể. Nếu điều kiện sai, chương trình có thể thực hiện một khối mã khác, sử dụng else. Cú pháp cơ bản của một câu lệnh if-else như sau:

if (điều kiện) 
{
    // Mã được thực hiện nếu điều kiện đúng
}
else 
{
    // Mã được thực hiện nếu điều kiện sai
}

Dưới đây là một ví dụ đơn giản:

int number = 10;

if (number > 0) 
{
    Console.WriteLine("Số dương");
} 
else 
{
    Console.WriteLine("Số âm hoặc bằng không");
}

Ngoài ra, cũng có thể sử dụng else if để kiểm tra nhiều điều kiện khác nhau:

int score = 85;

if (score >= 90) 
{
    Console.WriteLine("A");
} 
else if (score >= 80) 
{
    Console.WriteLine("B");
} 
else if (score >= 70) 
{
    Console.WriteLine("C");
} 
else if (score >= 60) 
{
    Console.WriteLine("D");
} 
else 
{
    Console.WriteLine("F");
}

Câu lệnh switch-case

Câu lệnh switch-case cho phép bạn kiểm tra một biến hoặc một biểu thức và thực hiện một trong nhiều khối mã khác nhau dựa trên giá trị của biến hoặc biểu thức đó. Cú pháp của câu lệnh switch-case như sau:

switch (biểu_thức) 
{
    case giá_trị_1:
        // Mã được thực hiện nếu biểu thức bằng giá trị 1
        break;
    case giá_trị_2:
        // Mã được thực hiện nếu biểu thức bằng giá trị 2
        break;
    // các case khác
    default:
        // Mã được thực hiện nếu không có case nào khớp
        break;
}

Dưới đây là một ví dụ cụ thể:

char grade = 'B';

switch (grade) 
{
    case 'A':
        Console.WriteLine("Xuất sắc");
        break;
    case 'B':
        Console.WriteLine("Giỏi");
        break;
    case 'C':
        Console.WriteLine("Khá");
        break;
    case 'D':
        Console.WriteLine("Trung bình");
        break;
    case 'F':
        Console.WriteLine("Yếu");
        break;
    default:
        Console.WriteLine("Điểm không hợp lệ");
        break;
}

Khi nào sử dụng if-else và switch-case

if-else thường được sử dụng khi bạn có ít điều kiện cần kiểm tra hoặc các điều kiện đó không đơn giản, chẳng hạn như sử dụng các toán tử so sánh khác nhau (>=, <=, ==, v.v.). Nó cũng linh hoạt hơn khi bạn cần kết hợp nhiều điều kiện phức tạp.

switch-case thường thích hợp khi bạn cần kiểm tra giá trị của một biến cụ thể và giá trị này có thể là một tập hợp hạn chế của các giá trị cụ thể (ví dụ như hằng số nguyên, ký tự hoặc chuỗi cụ thể). switch-case giúp mã nguồn trở nên rõ ràng hơn và dễ đọc hơn trong các tình huống này.

Kết luận

Cả if-elseswitch-case đều là các công cụ mạnh mẽ để điều khiển luồng của chương trình trong C#. Hiểu được khi nào sử dụng mỗi loại câu lệnh này sẽ giúp bạn viết mã hiệu quả và dễ bảo trì hơn. Sử dụng if-else cho các điều kiện phức tạp và switch-case cho các trường hợp có nhiều lựa chọn rõ ràng là một cách tốt để tối ưu hóa mã nguồn của bạn.

Comments