码迷,mamicode.com
首页 > 编程语言 > 详细

Java学习笔记—第六章 流程控制语句

时间:2015-04-16 17:53:57      阅读:290      评论:0      收藏:0      [点我收藏+]

标签:java   if   流程控制语句   switch   else   continue   

第六章  熟悉Java的流程控制语句

    Java的程序流程控制分为顺序结构选择结构循环结构跳转语句

  1. 顺序结构:按照程序代码自上而下执行,直到程序结束,中间没有任何判断和跳转。

  2. 选择结构(分支结构):判断给定的条件,根据判断结果控制程序的流程。包括if语句和switch语句。

    2.1 if语句:通过判断给定表达式的值来决定程序的流程。常见if语句的形式有三种:

    (1)if(expression){

           statement;

         }

    (2)if(expression){

           statement;

         }else{

            statement;

         }

    (3)if(expression){

            statement;

         }else  if(expression){

            statement;

         }

           ......               //可以有零个或多个else if语句

         else{                  //最后的else语句可以视情况省略

             statement;  

         } 

  表达式expression的结果只能是布尔型,即此表达式的结果只能是true或false

  当表达式expression为true时执行if所对应的代码块,否则,如果有else则执行else对应的代码块。

 (2)和(3)是相通的,(3)中如果没有else if代码块就变成(2)。

  else语句必须和if或者else if配对使用,else总是与离它最近的if或者else if配对,可以通过大括号改变配对关系。

   备注:在流程控制语句中用每对大括号括起来的代码被称为代码块,一个代码块通常被当做一个整体来执行(除非运行过程中遇到break、continue、return等关键字,或者出现异常),这个代码块也被称为条件执行体。

   2.2 switch语句(多分支语句):通过数据匹配的方式实现程序的多分支控制,语法格式如下:

    switch(expression){

        case  value 1:

            statement1;

            break;

        case  value 2:

            statement2;

            break;

        ......              //可以有多个case代码块

        case  value N:

            statementN;

            break;

        default:

            break;

    }

    expression的返回值类型只能是char、byte、short或int。

    switch语句先取得expression的返回值,再根据返回值依次与每个case语句所对应的value值匹配,匹配成功则执行相应的代码块。

    case语句对应的value值必须为常量,且各个value值应不同。

    break语句用来在执行完相应的case分支语句后跳出switch语句,否则将顺序执行后面的语句。某些情况下,多个不同的case值要执行一组相同的操作,可以省略相应代码块中的break语句。

    default是可选的,当表达式的值与任何的value值都不匹配时,则执行default代码块。如果没有default语句,则程序不做任何操作,直接跳出switch语句。


3. 循环结构:利用循环结构可重复执行某一段代码,直到不满足循环条件为止。循环结构主要有for、while、do-while三种循环语句。

    3.1 for语句:适用于明确知道循环次数的情况。语法格式如下:

    for(initialization;condition;iteration){

        statement;

    }

    循环的初始化(initialization):只在循环开始前执行一次,通常在此进行迭代变量的定义,该变量将作为控制整个循环的计数器适用。

    条件表达式(condition):一个布尔型表达式,如果值为真,执行循环体内的语句statement,如果为假则结束循环。

    迭代表达式(iteration):通常是迭代变量的自增或自减运算表达式,在循环体(statement)执行完毕时执行。

    3.2 while语句:通常用于重复执行次数不确定的循环。语法格式如下:

    while(expression){

        statement;

    }

    expression是一个布尔表达式,while语句首先得到expression的返回值,当返回值为true时,执行循环体内的语句statement,否则,循环结束。

    3.3 do-while语句:do-while与while的区别在于第一次循环时while是先判断循环条件,再循环,若条件为假,则循环体不会被执行。而do-while语句则是先执行循环体后再判断即do-while循环至少会执行一次循环体


4. 跳转语句:通过跳转语句可以实现程序流程的跳转。Java中的跳转语句包括break语句、continue语句和return语句。

    4.1 break语句:break语句可以用在循环语句的内部,用来结束循环。例如:

    public static void main(String[] args){

        int i=0;

        while(i<10){

            i++;

            if(i==5){

                break;

            }

            System.out.println(i);

        }

        System.out.println("循环结束");

    }

    运行结果:输出1,2,3,4,5以后,将会输出“循环结束”。


    4.2 continue语句:只能用在循环语句内部,用来跳过本次循环,继续执行下一次循环。在while和do-while循环结构中使用continue语句,表示跳转到循环条件处继续执行;而在for循环结构中使用continue语句,表示跳转到迭代语句处继续执行。例如:

    public static void main(String[] args){

        int i==0;

        while(i<4){

            i++

            if(i==2){

                continue;

            }

            System.out.println(i);

        }

        System.out.println("循环结束");

    }

    运行后输出结果将是:1,3,4,循环结束


    4.3 return语句:return语句用在方法中,作用是终止当前方法的执行,返回到调用该方法的语句处,并继续执行程序。语法格式如下:

    return [expression];

    return语句后面可以带返回值,也可以不带。

    表达式expression可以是常量、变量、对象等。return语句后面表达式的数据类型必须与方法声明的数据类型一致。

    当程序执行return语句时,先计算表达式的值,然后将表达式的值返回到调用该方法的语句处。

    位于return语句后面的代码块不会被执行,因此return语句通常位于代码块的最后。


5. Java程序的注释用法:Java有三种注释方式,分别为单行注释、多行注释和文档注释。

    单行注释:以双斜杠"//"开始,终止于本行结束。用于对一行代码的简短说明。

    多行注释:以“/*”开始,以“*/”结束,两者间所有的字符都是多行注释的内容。通常用于对文件、方法、数据结构等的说明,或者算法的描述。一般位于方法的前面,起引导作用,也可以根据需要放在其他位置。

    文档注释:以“/**”开始,以“*/”结束,此间所有字符都是文档注释的内容。文档注释主要是为了支持JDK工具javadoc,通过javadoc,文档注释将会生成HTML格式的代码报告,因此文档注释应当书写在类、构造方法、成员方法以及常量或变量的定义之前。

Java学习笔记—第六章 流程控制语句

标签:java   if   流程控制语句   switch   else   continue   

原文地址:http://linyingkun.blog.51cto.com/2393912/1633482

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!