C# 控制流最佳实践
控制流是编程中的核心概念之一,它决定了程序执行的顺序和逻辑。在C#中,控制流主要通过条件语句、循环和异常处理来实现。掌握控制流的最佳实践,可以帮助你编写出高效、可读性强且易于维护的代码。本文将逐步讲解C#控制流的最佳实践,并提供实际案例和代码示例。
1. 条件语句
条件语句用于根据不同的条件执行不同的代码块。C#中最常用的条件语句是 if
、else if
和 else
。
1.1 使用 if
语句
if
语句用于检查一个条件是否为真,如果为真则执行相应的代码块。
int number = 10;
if (number > 0)
{
Console.WriteLine("Number is positive.");
}
输出:
Number is positive.
1.2 使用 else if
和 else
else if
用于检查多个条件,而 else
用于处理所有其他情况。
int number = -5;
if (number > 0)
{
Console.WriteLine("Number is positive.");
}
else if (number < 0)
{
Console.WriteLine("Number is negative.");
}
else
{
Console.WriteLine("Number is zero.");
}
输出:
Number is negative.
提示
尽量将最常见的条件放在 if
语句中,这样可以提高代码的执行效率。
2. 循环
循环用于重复执行一段代码,直到满足某个条件为止。C#中常用的循环有 for
、while
和 foreach
。
2.1 使用 for
循环
for
循环适用于已知循环次数的情况。
for (int i = 0; i < 5; i++)
{
Console.WriteLine($"Iteration {i}");
}
输出:
Iteration 0
Iteration 1
Iteration 2
Iteration 3
Iteration 4
2.2 使用 while
循环
while
循环适用于循环次数未知的情况。
int i = 0;
while (i < 5)
{
Console.WriteLine($"Iteration {i}");
i++;
}
输出:
Iteration 0
Iteration 1
Iteration 2
Iteration 3
Iteration 4
2.3 使用 foreach
循环
foreach
循环用于遍历集合或数组中的每个元素。
int[] numbers = { 1, 2, 3, 4, 5 };
foreach (int number in numbers)
{
Console.WriteLine(number);
}
输出:
1
2
3
4
5
警 告
在使用 foreach
循环时,不能修改集合中的元素,否则会导致运行时错误。
3. 异常处理
异常处理用于捕获和处理程序运行时可能出现的错误。C#中常用的异常处理语句是 try
、catch
和 finally
。
3.1 使用 try-catch
语句
try-catch
语句用于捕获并处理异常。
try
{
int result = 10 / 0;
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Cannot divide by zero.");
}
输出:
Cannot divide by zero.
3.2 使用 finally
语句
finally
语句用于执行无论是否发生异常都需要执行的代码。
try
{
int result = 10 / 0;
}
catch (DivideByZeroException ex)
{
Console.WriteLine("Cannot divide by zero.");
}
finally
{
Console.WriteLine("Finally block executed.");
}
输出:
Cannot divide by zero.
Finally block executed.
注意
在 finally
块中不要抛出异常,否则会覆盖 catch
块中的异常信息。