zoukankan      html  css  js  c++  java
  • 黑马程序员_循环语句的使用

    ------- android培训java培训、期待与您交流! ----------

    循环语句的使用

    循环,顾名思义,就是重复;在c#中就是重复的去做某一件事,也就是去执行某一段代码;在c#中只有三种循环结构那就是:while循环,do while循环,和for循环;其实功能都是一样的,而且互相也都是可以转换的,注意是在书写格式,以及各个循环,所侧重的方面,有所不同;下面将一一的介绍

    1.while循环

    一开始也说了,循环和if,else有些许的相似,在执行前都是需要先进行,逻辑判断,成立的话,循环就执行,否则循环结束;在这里主要记住书写格式就可以了:

    eg:{

         while(<循环的条件>){

                 //条件成立执行的语句,也就是循环体

                //需要注意的是,在循环体中必须要有一个变量,随着循环的执行

                //一直在改变,并且最终使循环的条件不成立,从而使循环结束,要 

                //不然就成了 死循环

         }

    }

    循环的条件是逻辑表达式,成立则执行循环,否则循环就结束了;

    while循环主要的运用场合是在,不知道具体要循环多少次;

    在循环体中要有一个循环增量,可以使循环趋于结束,不然就是死循环;

    在设计程序的时候,应该尽量的避免死循环,但是有些程序也要用到死循环;

    2.do while循环

     do while循环和while循环是颠倒过来的,后者是先判断条件然后执行循环体,前者相反,不管三七二十一,先执行一次循环体,然后在进行条件的判断,这样的话,循环再运行的时候,就至少的会执行一次。别看这细微的差别,要知道有时候while循环可能一次都不执行,因为可能一开始条件就是不成立的;

    书写格式:

    {

           do{

                //这里面放的是循环体,和while是一样的

          }while(<循环的条件>);//需要注意的是,这里有一个分号,这种格式不能

    //对比while来记忆,少了分号,编译就会出错

     

    }

    3.for循环

    for循环在程序设计中使用的频率,相对于其它两种循环来说,要更加的高一些,可能是因为它的书写格式,使得循环的循环条件、循环体、循环增量看起来一目了然,不容易造成死循环,在while和do while中有时可能不经意间,就忘了写循环增量,造成循环结束不了;

    书写格式:

    {

          for(<初始化变量> ; <循环的条件> ;<循环增量(也叫迭代器)>){

              //循环体

          }

    }

    在for中的三个参数,初始化变量,和迭代器忽略不写也是可以的;

    刚才讲了,三种循环可以互相的转换,只是侧重的循环种类,有些不同,for循环主要是侧重,知道了循环的次数,和while正好是相对的;

    它的执行流程,和前面两个循环只有一点小小的差别,那就是执行完循环体之后,会执行一次迭代器,然后在去判断循环的条件。其它的都一样;

    4.循环其他的结束方式

    这里引出了一个新的问题,就是除了循环的条件不成立了,循环结束了,还有没有其他的方式,使循环结束呢?

    答案是肯定的,而且方法也很多,但是涉及到几个关键字,它们具体的用法如下:

    • break:和case中的break是一样的,循环中只要一执行到这个关键字,循环立即结束,非常干脆,作用就是跳出当前的循环;
    • continue:和break的干净利落的退出循环不一样,continue就显得委婉一些,在循环中遇到它,程序就会跳过本次循环,是本次循环,然后继续判断循环的条件,执行下一个循环;
    • goto:它的使用争议比较大,过多的使用的话,会造成程序的混乱,这也是因为它的功能太强大;循环体中遇到它,就会跳转到它所指定的标签(就是事先在代码中标记的好的);
    • return:它就更加的简单粗暴了,和break的功能一样,也是直接的退出循环,可是它退出的就更加的狠了,直接的退出了 函数

    循环中出现以上四个关键字的时候,它们的后面是不可以跟其它的代码的,那样编译器,会报错,因为那些代码压根就执行不到;

    在代码中如何打标签:标签只可以打在选择和循环结构的前方,作用就像桌面上的一个快捷方式,使用到这个标签时,程序直接跳到标签对应的代码:

    书写格式:

    {

            outer:for(){  //这就是在循环的前面打了一个标签

                inner :for(){ //这也是一个标签;

                     if(){

                     //需要注意的是break,continue,goto,都是可以使用标签的,

                     //各自原本的功能不变

                      break outer;//跳转到outer标签,对应的代码下执行;

                  }

                }

             }

    }

    这里定义了一个嵌套的for循环,里面的循环中有一个判断的条件,一旦条件成立,立马的跳转到外面的for循环中,这就干预了,程序的正常执行,以达到我们要的功能;

  • 相关阅读:
    VS.NET 2010 新功能 [整理]
    Sculpture 基于MDD的集成开发平台
    更换VS.NET 2010的皮肤 [Visual Studio Blog]
    SQL Server BI Step by Step SSIS 7 (End) 事务,错误输出,事件处理,日志记录
    和我一起学CSLA.NET设计模型及数据访问
    Visual Studio DSL 入门 2
    SQL Server BI Step by Step SSIS 5 通过Email发送查询结果
    SQL Server BI Step by Step SSRS 1Reporting Service 2008的新特性
    SQL Server BI Step by Step SSRS 2SQL Server 2008 Reporting Services实现匿名访问报表
    和我一起学CSLA.NET先忽悠下
  • 原文地址:https://www.cnblogs.com/yaochao/p/3983268.html
Copyright © 2011-2022 走看看