最近不做C# ,突然想起来这个知识点,担心总部使用就忘记了,保存做个备份,省的以后忘记。
C# 支持一下四种循环方式
一、while循环
1.代码格式
while(循环条件)
{
循环体
}
2. 如果循环条件为真,则执行循环体
执行完循环体之后,在判断条件是否为真,
如果为真,在执行循环体,这样一直到判断为假时结束
二、do while循环
1. 代码格式
do
{
循环体
}
while(循环条件);
2.先执行一次循环体,然后判断循环条件是否满足
如果满足则再次执行循环体,直到条件不满足结束
三、for循环
1.代码格式
for(表达式1;循环条件);表达式2
{
循环体
}
2. 运行表达式1
判断循环条件是否为真,如果为真,则执行循环体
执行完后在运行表达式2,接着在判断循环条件
直到循环条件为假结束
四、break和continue
1. break
跳出当前循环
2. continue
结束当前数值循环,直接进行下一个数值运算循环
五、foreach循环(C# 独有的遍历方式)
1. 只能用于遍历IEnumerable的容器类型,数组或集合(List,Dictionary....,)
2. 代码格式:
foreach(数据类型 变量 in 数组或集合)
{
循环体
}
3. foreach循环也叫做只读循环,再循环体中,不能更改集合或数组
前三种循环在C++、Java中也是非常常见的,基本用法也差不多,
当然,我个人一般更倾向于foreach,除非需要获得指定的遍历的内容值,否则foreach均可实现。
虽然吧,foreach循环是一种高效的循环,但也有一定的限制。
现逐个分析一下每个循环的特点:
1、while循环while循环通常用于不确定的循环次数时去使用它。典型用法bool flag=true;while(flag){///ToDoif(检查条件)flag=false;}特点:有可能一次都不执行,如果判断条件存在bug,很有可能出现死循环。
2、do...while循环功能上和while基本类似,不同之处它保证了循环至少执行一次,当然也很有可能出现死循环。用法示例:int i=1;do{DoWork();n++;}while(n<100);
3、for循环for循环主要用于循环次数固定的循环,出现死循环的几率很小。用法示例:for(int i=1;i<100;i++){console.WriteLine(i);}
4、foreach循环是一种十分高效的循环,主要用来遍历IEnumerable的容器类型,比如ArrayList、List等都可以使用foreach循环来遍历。foreach在保证程序健壮性方面的优势更加明显,使用foreach可以不必考虑集合的上下限的问题,所以不容易出错。用法示例:foreach(int item in list){console.WriteLine(item);}
使用建议:
1、对于集合类的建议采用foreach,更加高效。
2、对于循环次数不确定的情况下可以考虑while或者do...while循环3、for循环适合那种确定次数的,比foreach效率要低一些。