zoukankan      html  css  js  c++  java
  • Java基础之流程控制

    Java顺序结构

    任何编程语言中最常见的程序结构就是顺序结构。顺序结构就是程序从上到下逐行地执行,中间没有任何判断和跳转。如果main方法的多行代码之间没有任何流程控制,则程序总是从上向下依次执行,排在前面的代码先执行,排在后面的代码后执行。
    

    分支结构

    if(条件表达式){
      	语句体;
    }
    

    执行流程

    • 首先判断条件表达式看其结果是true还是false

    • 如果是true就执行语句体

    • 如果是false就不执行语句体

    if语句第二种格式

    if(关系表达式) { 
      	语句体1;
    }else {
      	语句体2;
    }
    

    执行流程

    • 首先判断关系表达式看其结果是true还是false

    • 如果是true就执行语句体1

    • 如果是false就执行语句体2

    if语句第三种格式

    if (判断条件1) {
      	执行语句1;
    } else if (判断条件2) {
      	执行语句2;
    }
    ...
    }else if (判断条件n) {
     	执行语句n;
    } else {
      	执行语句n+1;
    }
    

    执行流程

    • 首先判断关系表达式1看其结果是true还是false

    • 如果是true就执行语句体1,然后结束当前多分支

    • 如果是false就继续判断关系表达式2看其结果是true还是false

    • 如果是true就执行语句体2,然后结束当前多分支

    • 如果是false就继续判断关系表达式…看其结果是true还是false

    • 如果没有任何关系表达式为true,就执行语句体n+1,然后结束当前多分支

    switch选择结构

    switch(表达式){
        case 常量值1:
            语句块1;
            【break;】
        case 常量值2:
            语句块2;
            【break;】   
        。。。
       【default:
            语句块n+1;
            【break;】
         】
    }
    

    执行过程:

    (1)入口

    ①当switch(表达式)的值与case后面的某个常量值匹配,就从这个case进入;

    ②当switch(表达式)的值与case后面的所有常量值都不匹配,寻找default分支进入;不管default在哪里

    (2)一旦从“入口”进入switch,就会顺序往下执行,直到遇到“出口”,即可能发生贯穿

    (3)出口

    ①自然出口:遇到了switch的结束}

    ②中断出口:遇到了break等

     

    注意:

    (1)switch(表达式)的值的类型,只能是:4种基本数据类型(byte,short,int,char),两种引用数据类型(JDK1.5之后枚举、JDK1.7之后String)

    (2)case后面必须是常量值,而且不能重复

    穿透例子  

    		switch(month) {
                case 1:
                case 2:
                case 12:
                    System.out.println("冬季");
                    break;
                case 3:
                case 4:
                case 5:
                    System.out.println("春季");
                    break;
                case 6:
                case 7:
                case 8:
                    System.out.println("夏季");
                    break;
                case 9:
                case 10:
                case 11:
                    System.out.println("秋季");
                    break;
                default:
                    System.out.println("你输入的月份有误");
                    break;
    

      

      

      

      

      

    本文为原创文章,转载请标明出处
  • 相关阅读:
    旋转骰子
    自我介绍
    【边带权 维护节点和根距离 两点距离】银河英雄传说
    【含义冲突判断】程序自动分析
    【01背包 合并费用】搭配购买
    【网格图环判断】格子游戏
    【连通块 维护size】 连通块中的点数
    【模板】 合并集合
    【出栈顺序判断】 Rails
    【整除分块】 余数之和
  • 原文地址:https://www.cnblogs.com/harden13/p/14457863.html
Copyright © 2011-2022 走看看