C#6种循环的方式你知道几种

下面我是在c#中可以实现循环的6中方式:

第一种,也是我们最常用的一种循环语句—for循环

优点:循环标识变量会自动销毁

    缺点: 如果用字符串等数据类型来作循环标识很麻烦

   

第二种,集合遍历—foreach 循环

优点:遍历集合非常方便,无需获取循环总大小

缺点:内部无法知道循环多少次

 

第三种,更灵活的循环语句while

优点:自定义循环标识、循环条件、循环方式,比for循环灵活

缺点:循环标识不会自动销毁

 

第四种,至少执行一次循环体的循环语句dowhile

优点:如果需要至少执行一次代码的该循环优于其他循环

缺点:同while一样

 

第五种,特殊的循环递归

优点:遍历树结构等,递归优于其他的循环

缺点:书写不规范很有可能造成无限递归

 

第六种,利用c#goto关键字特性来实现循环

这只是一种方式,goto关键字是可以跳转到其他语句的作用,

在这里我利用它来实现循环功能

 

下面是我利用上面六种循环实现输出1~9的代码

            //---------------------------for循环--------------------------------

            Console.Write("for循环"+"\n");

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

            {

                Console.Write(i + "     ");

            }

            //----------------------------foreach循环-------------------------------

            Console.Write("\n"+"foreach循环" + "\n");

            int[] d = new int[]{ 1, 2, 3, 4, 5, 6, 7, 8, 9};

            foreach (var item in d)

            {

                Console.Write(item + "     ");

            }

            //--------------------------while循环---------------------------------

            Console.Write("\n" + "while循环" + "\n");

            int a = 1;

            while (a<10)

            {

                Console.Write(a + "     ");

                a++;             

            }

            //-------------------------do...while循环----------------------------------

            Console.Write("\n" + "do...while循环" + "\n");

            int b = 1;

            do

            {

                Console.Write(b+ "     ");

                b++;

            } while (b < 10);

            //------------------------递归-----------------------------------

            Console.Write("\n" + "递归" + "\n");

            Program.递归(1);

            //--------------------------goto---------------------------------

            Console.Write("\n" + "goto" + "\n");

            int c = 1;

            aaa: //aaa是一个标签 在语句前面声明了标签,goto才能调用

            {

                if (c < 10)

                {

                    Console.Write(c + "     ");

                    c++;

                    goto aaa;

                }

            }

            Console.ReadLine();

效果如下:

C#6种循环的方式你知道几种_第1张图片

你可能感兴趣的:(c#)