C# 四种循环体的使用与区别

简介: C# 四种循环体的使用与区别

循环在代码中起到什么作用

一般用于重复执行某些代码,或持续读取一些数据等,是必不可少的知识点

比如输出:“10000次 我爱你”

如果不使用循环,需要打10000次…使用循环,几秒内可以执行完成

有哪四种循环

for(确定次数)

while(不确定次数)

do…while(先执行一次在判断)

foreach(一般用于数组)

这都是经常需要使用到的

for循环(确定次数)

for (表达式; 表达式; 表达式) {

//循环体

}

控制台输出我爱你100次

for (int i = 0; i <= 100; i++) {

Console.WriteLine(i+“我爱你”);

}

i++:每次执行一次都加一位数,如果i=1;循环一次后i++就等于2,作用只是单纯的加+1

如果后面没有写i++,那么条件就一直成立,将进入死循环,不会停止

for (int i = 0; i <= 100;) {

Console.WriteLine(“我爱你”);

}

一直执行,不会停止

另一种死循环的写法

for (; ; )

{

Console.WriteLine(“我爱你”);

}

这样也是一个死循环,因为没有参数,条件一直成立

弹出循环体

执行10000次,在520次的时候退出循环

使用:

break

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

{

Console.WriteLine(i+“我爱你”);

if (i == 520) {

break;

}

}

在520次的时候弹出循环体,520后的数字将不会执行

弹出本次循环,继续下一次

例如:我没有女朋友,不喜欢520这个数字

使用:
continue

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

{

if (i == 520) {

continue;

}

Console.WriteLine(i + “我爱你”);

}

跳过了,520

foreach循环(数组)

这个一般用于数组类的循环,比如:循环出所有的进程,循环出数组的全部内容

写法:

foreach(类型 变量名 in 表达式)

{

循环语句

}

比如有一个int类型的数组,循环出他所有的元素

int[] a = new int[5];

a[0] = 1;

a[1] = 2;

a[2] = 3;

a[3] = 4;

a[4] = 5;

foreach (int b in a)

{

Console.WriteLine(b);

}

运行结果:

获取所有进程:

Process[] a = Process.GetProcesses();

foreach (Process b in a)

{

Console.WriteLine(b);

}

这个循环就是用来循环数组类的,特别好用

do…while()

个人比较少使用到

和for区别就是当不确定次数的时候使用

这个循环是先执行一次,在判断条件是否成立

int a = 0;

int b = 1;

do

{

Console.WriteLine(“不管怎么样我都会执行一次!”);

} while (a >=1);

不管条件成不成立都先执行一次!

循环50次

int a = 0;

int b = 1;

do

{

Console.WriteLine(“不管怎么样我都会执行一次!”);

a++;

} while (a <=50);

同理记得在循环体a++,不然就是个死循环

while

这个和do…while的区别就是先判断在循环,区别不大;

表达式可以是个 布尔值

while (true) {

Console.WriteLine(“我是个死循环”);

}

死循环

读取数据库记录:

while (a.Read()) {

string str = a[“id”].ToString();

Console.WriteLine(str);

}

和do…while使用方法一样!!!

纯手打,点个赞呗~

相关文章
|
7月前
|
C#
C#学习相关系列之yield和return的区别
C#学习相关系列之yield和return的区别
130 1
|
7月前
|
C#
C#中IsNullOrEmpty和IsNullOrWhiteSpace的区别?
C#中IsNullOrEmpty和IsNullOrWhiteSpace的区别?
108 5
|
7月前
|
C#
C#系列之ref和out的区别
C#系列之ref和out的区别
254 0
|
1月前
|
Java 物联网 编译器
C#一分钟浅谈:.NET Core 与 .NET 5 区别
本文对比了 .NET Core 和 .NET 5,从历史背景、主要区别、常见问题及易错点等方面进行了详细分析。.NET Core 侧重跨平台支持和高性能,而 .NET 5 在此基础上统一了 .NET 生态系统,增加了更多新特性和优化。开发者可根据具体需求选择合适的版本。
52 7
|
6月前
|
存储 安全 Java
程序与技术分享:C#值类型和引用类型的区别
程序与技术分享:C#值类型和引用类型的区别
51 0
|
2月前
|
网络协议 网络性能优化 C#
C# 一分钟浅谈:UDP 与 TCP 协议区别
【10月更文挑战第8天】在网络编程中,传输层协议的选择对应用程序的性能和可靠性至关重要。本文介绍了 TCP 和 UDP 两种常用协议的基础概念、区别及应用场景,并通过 C# 代码示例详细说明了如何处理常见的问题和易错点。TCP 适用于需要可靠传输和顺序保证的场景,而 UDP 适用于对延迟敏感且可以容忍一定数据丢失的实时应用。
52 1
|
1月前
|
开发框架 安全 .NET
C#面:Server.UrlEncode、HttpUtility.UrlDecode的区别
通过上述详细的解释和实例分析,相信大家对 `Server.UrlEncode` 和 `HttpUtility.UrlDecode` 的区别有了更深刻的理解,并能在实际开发中灵活运用。
46 0
|
2月前
|
C# 开发者
【捞底干货】C#中equals和==运算符的区别
【捞底干货】C#中equals和==运算符的区别
99 1
|
3月前
|
C# 索引
C# 一分钟浅谈:接口与抽象类的区别及使用
【9月更文挑战第2天】本文详细对比了面向对象编程中接口与抽象类的概念及区别。接口定义了行为规范,强制实现类提供具体实现;抽象类则既能定义抽象方法也能提供具体实现。文章通过具体示例介绍了如何使用接口和抽象类,并探讨了其实现方式、继承限制及实例化差异。最后总结了选择接口或抽象类应基于具体设计需求。掌握这两者有助于编写高质量的面向对象程序。
143 5
|
4月前
|
C#
C#中的overload,overwrite,override的语义区别
以上概念是面向对象编程中实现多态性和继承的重要基石。理解它们之间的区别对于编写清晰、可维护的代码至关重要。
156 7