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;
    

      

      

      

      

      

    本文为原创文章,转载请标明出处
  • 相关阅读:
    [机器学习]Fine Tune
    行人重识别综述
    OverFeat:基于卷积网络的集成识别、定位与检测
    HOG行人目标检测
    You Only Look Once Unified, Real-Time Object Detection(你只需要看一次统一的,实时的目标检测)
    目标检测:AlexNet
    目标检测Object Detection概述(Tensorflow&Pytorch实现)
    c++ 函数的默认参数
    C++空类
    C++中三种创建对象的方法【转】
  • 原文地址:https://www.cnblogs.com/harden13/p/14457863.html
Copyright © 2011-2022 走看看