C#中break和continue的区别?

在C#编程语言中,break和continue是两个用于控制循环流程的关键字,但它们的作用和用途有所不同。

break关键字

break关键字用于立即终止它所在的最内层循环或switch语句,并跳出该循环或switch块。程序执行将继续进行循环或switch语句之后的下一行代码。

• 在循环中(如for、while、do-while),break用于在满足特定条件时提前退出循环。

• 在switch语句中,break用于防止代码自动"落入"下一个case块(即防止"贯穿"效应)。

continue关键字

continue关键字用于跳过它所在循环的当前迭代中剩余的代码,并立即开始下一次迭代(如果有的话)。它不会终止整个循环,只是跳过当前迭代中continue之后的代码。

• 在for循环中,continue会导致跳过循环体中continue之后的语句,并直接跳到更新表达式(通常是i++)和条件判断部分。

• 在while和do-while循环中,continue会导致跳过循环体中continue之后的语句,并直接回到条件判断部分。

示例代码

以下是一个简单的示例,展示了break和continue在for循环中的使用:

【csharp】

using System;

class Program

{

static void Main()

{

for (int i = 0; i < 10; i++)

{

if (i == 5)

{

// 当i等于5时,跳出循环

break;

}

else if (i % 2 == 0)

{

// 当i是偶数时,跳过当前迭代剩余的代码

continue;

}

// 只会打印奇数,除了5(因为5会触发break)

Console.WriteLine(i);

}

}

}

在这个例子中,输出将是:

1

3

• 当i等于5时,break语句导致循环终止。

• 当i是偶数(0、2、4、6、8)时,continue语句导致跳过Console.WriteLine(i);这一行,因此这些值不会被打印出来。

• 剩下的奇数(1、3、7、9)中,只有1和3被打印出来,因为7和9在i等于5之后,而循环已经在i等于5时终止了。

相关推荐
罗西的思考3 小时前
【Agent OS / AIOS】AOHP 深度解读:当 OS 开始为 Agent 而设计
人工智能·算法·机器学习
x_x-F4 小时前
网络数据从网卡到用户态:一场基于内存所有权转移的接力赛
开发语言·网络·php
民乐团扒谱机4 小时前
【微实验】组合优化matlab实战(马科维茨投资模型):在收益与风险之间,寻找最优的人生配比
大数据·人工智能·算法·机器学习·数学建模·matlab·组合优化
名字还没想好☜4 小时前
Java 线上内存泄漏排查实战:jmap 导堆、MAT 找 GC Roots 与四类常见泄漏
java·开发语言·jvm·内存泄漏
码匠许师傅4 小时前
【C++ 面试真题】聊聊 C++ 的多继承与虚继承
开发语言·c++·面试
Nil2084 小时前
leetcode 160相交链表
算法·leetcode·链表
我不是疯子是傻子5 小时前
Qt CAN通信周期发送抖动?实测定时器精度校准与时间戳补偿方案
开发语言·数据库·qt
迷途之人不知返5 小时前
算法系列2:滑动窗口
算法
IT爱学堂5 小时前
尚硅谷 - 2025年3月Java+AI大模型应用开发
java·开发语言·人工智能
有点。5 小时前
C++认识数
开发语言·c++