zoukankan      html  css  js  c++  java
  • Java SE ---流程控制语句

     java的控制流程有三种:
    一,顺序流程            
       自上而下,按照代码的先后顺序执行
    二,分支流程            
       1,if/else语句            
       2,switch/case语句
    三,循环流程             
       1,for循环            
               2,while循环             
               3,do while循环
     
    先来说说分支流程里的if的用法:if有以下三种方式:
    第一种形式:
         if(布尔表达式) {
                //待执行的代码 
         }
     
    第二种形式:
         if(布尔表达式) { 
                //待执行的代码 
         } else { 
                //待执行的代码 
         }
     
     第三种形式:
         if(布尔表达式) { 
                //待执行的代码 
         } else if(布尔表达式) { 
                //待执行的代码 
         } else if(布尔表达式) {
                //待执行的代码 
         } else { 
                //待执行的代码 
         }
    来三组例子更形象:  int a = 2;
    int b = 2;
     
    if(a > b) {
    System.out.println("星期天在家学习 ");
            }
     
    ---------------------------------------------------------
     int a = 11;
    int b = 3;
    if(a > b) {
    System.out.println("a > b ");
    } else {
    System.out.println("a =< b ");
    ------------------------------------------------------------
    int a = 11;
    int b = 3;                 if(a > b) {
    System.out.println("a > b ");
    } else if (a < b) {
    System.out.println("a < b ");
    } else {
    System.out.println("a = b ");
    }
    ---------------------------------------
    String pwd = "hellojava";
    if(pwd != null && pwd.length() != 6) {
    System.out.println("密码长度不正确,请输入6位密码!");
    } else {
    System.out.println("请稍等,正在验证密码!");
    } 
    -----------------  
     
    接下来说说switch/case语句:
    switch/case语句的语法结构是: switch(变量a) {     //这里switch变量a的类型是有规定的,可以是byte,short,int,char,enum这五种里的某一种
    case 开关值1: 该开关下执行的语句
    case 开关值2: 该开关下执行的语句
    case 开关值3: 该开关下执行的语句
    case 开关值4: 该开关下执行的语句
    ......
    default: 变量值跟开关值都不符合的情况下后执行
    } 

    实例如下:
    int a = 3;
    switch(a) {
    case 0: System.out.println("a = 0");
    case 1: System.out.println("a = 1");
    case 2: System.out.println("a = 2");
    case 3: System.out.println("a = 3");
    default:System.out.println("a = 4");
    } 
     
    最终的运行结果是:a=3 ,
    当我们加上break switch的运行过程是:把 a的值与case的开关值比较,若a跟某个开关值相等,就执行该开关下的语句。如果a的值跟所有case开关值都不同,则执行default分支下的语句。 什么时候退出switch语句,取决于何时遇到break语句。要是没有遇到break语句,就继续执行下面的case语句,知道遇到第一个break语句才退出,否则一直运行到switch流程结束。 
     
    例子如下:
     int a = 1;
    switch(a) {
    case 0: System.out.println("a = 0");
    case 1: System.out.println("a = 1");
    case 2: System.out.println("a = 2");
    case 3: System.out.println("a = 3");                        
    break; 
    default:System.out.println("a = 4");

    运行结果是:a = 1   a = 2   a = 3 。

    因为变量a跟开关1的值相同,所以执行case1语句,一直往下执行case2,case3,遇到break就跳出switch流程,所以a = 1   a = 2   a = 3 。

    再来说说循环流程的3种形式:

    1. for 循环(使用最多的一种循环)形式为:        

    for(变量初始化;     条件判断;     步进)  { 
                //待执行的代码          

    } 

    for循环执行的流程是:

            1) 执行变量初始化   
            2) 执行条件判断。如果条件判断为假,那么退出for循环,开始执行循环后面的代码;
                                               如果条件判断为真,执行for循环里面的代码。 
            3) 执行步进 
            4) 重复步骤2

     例子:求出1-100之间的奇数之和。

    int sum = 0;
    for(int i = 1; i < 100; i = i +2) {
    sum += i;  //等价于sum = sum + i;
    }

    System.out.println("0-100之间的奇数之和" + sum);
    运行结果是:1-100之间的奇数之和2500  

    2, while 循环形式为: 先判断while里的布尔表达式,为真的话就执行代码;布尔表达式为假,while的循环体就一次也不执行。        

    while(布尔表达式)  {            

          //待执行的代码         

    例子:求出0-100之间的整数之和

    int a = 1;

    int sum = 0;

    while(a <= 100) {

    sum += a;  //等价于 sum = sum + a;

    a++;

    }

    System.out.println("1-100的整数之和===" + sum);

     运行结果是:1-100的整数之和===5050

     

    3.  do…while 循环为: 先执行do里的代码,接着判断while里的布尔表达式,为真的话再接着执行do里的代码,知道遇到while里的布尔表达式为假才跳出。注意while后有个分号       

    do {             

    //待执行的代码        

     }        

    while();

     

    具体例子如下:求出0-100之间的偶数之和。

    int a = 0;

    int sum = 0;

    do{

    sum += a;

    a = a + 2;

    }

    while(a <= 100);

    System.out.println("0-100之间的偶数之和 ===" + sum); 
    最终的运行结果是:0-100之间的偶数之和 ===2550   
             
    while与do…while之间的区别
    如果布尔表达式的第一次判断就为false,那么while循环一次也不执行;do…while循环则会执行一次。
    如果布尔表达式第一次判断为true,那么while循环与do…while循环是一样的。
    例子如下:  
    int k = 4;

    while(k < 2) {

    System.out.println("hello wolrd");

    }

    do{  System.out.println("welcomt to java");

    }

    while(k < 2); 运行结果是: welcomt to java

  • 相关阅读:
    iOS开发之Socket
    IOS开发之Bug--使用KVC的易错情况
    IOS开发之功能模块--给任意的UIView添加点击事件
    IOS开发之开发者账号遇到的bug
    iOS开发--关于TableViewCell的可视化设置细节
    学习Coding-iOS开源项目日志(四)
    Learn how to Use UIPageViewController in iOS
    关于Storyboard的使用
    学习Coding-iOS开源项目日志(三)
    学习Coding-iOS开源项目日志(二)
  • 原文地址:https://www.cnblogs.com/wxc-xiaohuang/p/3437265.html
Copyright © 2011-2022 走看看