3--黑马程序员--技术总结之流程控制语句

----------------------ASP.Net+Unity开发.Net培训、期待与您交流! ----------------------

一.控制语句 

    Java的控制语句有两种类型,即条件语句和switch语句
    1.条件控制语句
    1)if语句

          if语句的的一般形式:
                   if(表达式) {
                         若干语句
                   }
    注意事项:(1)if后面的表达式必须是boolean型;
              (2)当表达式的值为true时,执行紧跟着的复合语句,若表达式的值为false,执行程序中if语句后面的其他语句;
              (3)复合语句如果只有一个语句,则{}可以省略不写,但为了增强程序的可读性最好不要省略。
代码示例

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo1 {   
  2.     /**  
  3.      * if语句的使用  
  4.      * @黑马ZWF  
  5.      */ public static void main(String[] args) {  
  6.          change(3,2);  
  7.          }  
  8.      public static void change(int a, int b) {  
  9.          System.out.println("交换前的顺序为"+ a + "···" + b); //输出结果是:交换前的顺序为3···2  
  10.          if(a > b) {  
  11.              int temp = a;  
  12.              a = b;  
  13.              b = temp;  
  14.              }  
  15.          System.out.println("交换后的顺序为"+ a + "···" + b); //输出结果是:交换后的顺序为2···3}}  
  16.      }  
  17. }  

       2)if-else 语句
        if-else语句的一般形式:
        if (表达式) {
                 若干语句;
        }
        else {
                 若干语句;
        }
        用法与if语句相同,但要注意的是,如果if和else后面的复合语句只有一条,大括号才可以不写,否则一定要加上大括号。
错误用法的代码示例 

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public static void main(String[] args) {  
  2.     int x = 1, y, z = 0;  
  3.         if (x > 0)   
  4.             y = 5;  
  5.             z = 100;  
  6.         else  
  7.             y = -100;  
  8.         System.out.println(y + "···" + z);  
  9. }  
           编译不会让通过!


正确用法的代码示例

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public static void main(String args[]) {  
  2.     int x = 1, y, z = 0;  
  3.     if (x > 0) {  
  4.         y = 5;  
  5.         z = 100;  
  6.     }  
  7.     else {  
  8.         y = -100;  
  9.         z = 50;  
  10.     }  
  11.     System.out.println(y + "···" + z);     //输出结果为: 5···100  
  12. }  

          3)多个if-else语句 

           其一般形式为:
   if(表达式1)
      语句1
           else if(表达式2)
               语句2
            ···
           else if(表达式n)
  语句n
 代码示例

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo {  
  2.       
  3.     /**打印成绩,用多个if-else 语句控制   
  4.         大于等于90优;80~90良;70~80中;60~69及格;小于60及格  
  5.      * @黑马ZWF  
  6.      */  
  7.     public static void main(String args[]) {  
  8.         score(95);      //输出结果是:优  
  9.         score(85);      //输出结果是:良  
  10.         score(75);      //输出结果是:中  
  11.         score(65);      //输出结果是:及格  
  12.         score(55);      //输出结果是:不及格  
  13.         score(-101);    //输出结果是:超出范围  
  14.     }  
  15.     public static void score(int a) {  
  16.         if (a > 90 && a < 100 )  
  17.             System.out.println("优");  
  18.         else if (a > 80)  
  19.             System.out.println("良");  
  20.         else if (a > 70)  
  21.             System.out.println("中");  
  22.         else if (a > 60)  
  23.             System.out.println("及格");  
  24.         else if(a < 60 && a > 0)  
  25.             System.out.println("不及格");  
  26.         else   
  27.             System.out.println("超出范围!!");  
  28.           
  29.     }  
  30. }  

 2.switch语句
     switch语句是多分支的开关语句,一般形式定义如下:
     switch(表达式) {
          case 常量值1:若干语句;break;
          case 常量值2:若干语句;break;
          ······
          case 常量值n:若干语句break;
          default: 若干语句;
     }

 注意事项 :
     (1)switch表达式中的值必须是整形或者字符型。
     (2)常量值1到常量值n必须也是整型或字符型。
     (3)执行顺序:首先计算表达式中的值,如果表达式中的值和某个case后面的常量值相同,就执行该case的语句直到遇到break语句为止。如果表达式中的值没有与之相同的常量  值,则执行default后面的语句。
     (4)关于default语句:它是可选的,如果不存在并且switch表达式又没有与之相同的常量值,则系统不执行此switch语句。代码示例


[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo3 {  
  2.       
  3.     /**打印成绩,switch语句控制   
  4.     大于等于90优;80~90良;70~80中;60~69及格;小于60不及格  
  5.      * @黑马ZWF  
  6.      */  
  7.     public static void main(String args[]) {  
  8.         score(95);      //输出结果是:优  
  9.         score(85);      //输出结果是:良  
  10.         score(75);      //输出结果是:中  
  11.         score(65);      //输出结果是:及格  
  12.         score(55);      //输出结果是:不及格  
  13.     }  
  14.     public static void score(int a) {  
  15.         a = a/10;  
  16.         switch(a){  
  17.         case 10:  
  18.         case 9: System.out.println("优");break;  
  19.         case 8: System.out.println("良");break;  
  20.         case 7: System.out.println("中");break;  
  21.         case 6: System.out.println("及格");break;  
  22.         default : if(a >= 0 && a <= 10)  
  23.                     System.out.println("不及格");  
  24.         }  
  25.           
  26.     }  
  27. }  

二.循环语句

       1.for语句
       for语句是Java语言中极其重要的循环语句,其定义格式如下:
       for(表达式1; 表达式2; 表达式3) {
            若干语句
       }


注意事项:
    (1)for语句中的复合语句:{若干语句},称为循环体。
    (2)表达式1负责完成变量的初始化。
    (3)表达式2是值为boolean型的表达式,成为循环条件。
    (4)表达式3用来修整变量,改变循环条件。
      for循环语句的执行顺序:for语句的执行过程是这样的:首先计算表达式1,完成必要的初始化工作达式2的值,若表达式2的值为true,则执行循环体:执行完循环体之后紧接着计算表达式3,以便改变循环条件,这样一轮循环就结束了。第二轮循环从计算表达式2开始,若表达式2的值仍为true,则继续循环,否则跳出整个for语句执行后面的语句。
执行顺序图:(其中数字代表进行的步骤)

代码示例:

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo4 {  
  2.     /**  
  3.      * 利用for循环语句计算1+2+···+100的总和  
  4.      * @黑马ZZ  
  5.      */  
  6.     public static void main(String args[]) {  
  7.         int sum = 0;  
  8.         for(int x = 1; x <= 100; x++) {  
  9.             sum += x;  
  10.         }  
  11.         System.out.println("1+2+···+100的总和是:" + sum );  
  12.     }  
  13. }  

2.while语句
   while语句定义格式如下:
   while(表达式) {
          若干语句;
 }

 


代码示例:

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo5 {  
  2.     /**  
  3.      * 利用while循环语句计算1+2+···+100的总和  
  4.      * @黑马ZWF  
  5.      */  
  6.     public static void main(String args[]) {  
  7.         int sum = 0;  
  8.         int x = 0;  
  9.         while(x <=100){  
  10.             sum +=x;  
  11.             x++;  
  12.         }  
  13.         System.out.println("1+2+···+100的总和是:" + sum ); //输出结果是:1+2+···+100的总和是:5050  
  14.     }  
  15. }  

3.do-while语句 
do-while语句定义格式如下:
 do{
  若干语句;
 }
 while(表达式) ;

代码示例:

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo6 {  
  2.     /**  
  3.      * 利用do-while循环语句计算1+2+···+100的总和  
  4.      * @黑马ZWF  
  5.      */  
  6.     public static void main(String args[]) {  
  7.         int sum = 0;  
  8.         int x = 0;  
  9.         do {  
  10.             sum += x;  
  11.             x++;  
  12.         }  
  13.         while(x <=100);  
  14.         System.out.println("1+2+···+100的总和是:" + sum ); //输出结果是:1+2+···+100的总和是:5050  
  15.     }  
  16. }  

 

注意:do-while语句与while语句的区别是:do-while语句至少被执行一次!


三.break语句和continue语句

      在循环语句的使用过程中,可以通过break语句和continue语句来控制流程的开关。
      break语句使整个循环结束。
      continue语句使当前循环结束。
代码示例

[html]  view plain copy 在CODE上查看代码片 派生到我的代码片
  1. public class FlowControlDemo7 {  
  2.     /**  
  3.      * 比较break语句和continue语句的区别  
  4.      * @黑马ZWF  
  5.      */  
  6.     public static void main(String args[]) {  
  7.         int x, y;  
  8.         for(x = 1; x <= 100; x++) {  
  9.             break;  
  10.         }  
  11.         System.out.println(x);      //输出结果是:1  
  12.         for(y = 1; y <= 100; y++) {  
  13.             continue;  
  14.         }  
  15.         System.out.println(y);      //输出结果是:101  
  16.     }  
  17. }  
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值