【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句

发布时间:2024-03-22 13:01

目录

  • 前言
  • 一、流程控制语句
    • 1、流程控制语句介绍
    • 2、流程控制语句分类
  • 二、顺序结构
  • 三、分支结构
    • 1、if语句
      • if 第一种格式
        • ⭐代码演示
      • if 第二种格式
        • ⭐代码演示
      • if 第三种格式
        • ⭐代码演示
      • ⚡if语句的注意事项⚡
        • ⭐注意事项1演示
        • ⭐注意事项2演示
      • ❓等级成绩练习
    • 2、switch语句
      • 什么是switch语句?
      • switch语句格式和说明
        • ⭐代码演示1
        • ⭐代码演示2简写格式
      • ⚡switch的注意事项⚡
        • ⭐注意事项1演示
        • ⭐注意事项2演示
        • ⭐注意事项3演示
      • switch扩展
      • ❓志愿者意愿练习
  • 习题答案
  • 作者:KJ.JK


前言

       今天我们学习JavaEE的流程控制语句里面的分支语句,循环语句我将放到下篇文章讲解,话不多说,上代码!

一、流程控制语句

1、流程控制语句介绍

        流程控制语句:通过一些语句,来控制程序的【执行】流程

2、流程控制语句分类

          1.顺序结构: 程序默认  (从上到下执行)
          2.分支结构: ifswitch
          3.循环结构: forwhiledowhile

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第1张图片


二、顺序结构

      顺序结构就是:程序默认从上到下执行

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第2张图片


三、分支结构

1、if语句

if 第一种格式

         * 格式:
             if (判断条件) {
                语句体;	
             }



执行流程:

     *首先计算判断条件的结果
     
     *如果条件的结果为 true 就执行语句体
     
     *如果条件的结果为 false 就不执行语句体
     
     *继续执行后面的语句内容

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第3张图片


⭐代码演示

public class Main {
    public static void main(String[] args) {
       
        int a=10;
        int b=15;
        if(a>b){
            System.out.println("a比b大");
        }
        System.out.println("b比a大");
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第4张图片


if 第二种格式

      * 格式:
          if (判断条件) {
              语句体1;	
          } else {
            语句体2;	
          }


 执行流程:
 
    * 首先计算判断条件的结果
     
    * 如果条件的结果为 true 就执行语句体1
    
    * 如果条件的结果为 false 就执行语句体2

    * 继续执行后面的语句内容

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第5张图片


⭐代码演示

public class Main {
    public static void main(String[] args) {
        int a=10;
        int b=15;
        if(a>b){
            System.out.println("a比b大");
        }else {
            System.out.println("b比a大");
        }
    }
}


【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第6张图片


if 第三种格式

     * 格式:
        if (判断条件1) {
            语句体1;	
        } else if (判断条件2) {
           语句体2;	
        } 
        ...
         else {
         语句体n+1;
       }


执行流程:

      * 首先计算判断条件1的值
       
      * 如果值为true就执行语句体1;如果值为false就计算判断条件2的值
       
      * 如果值为true就执行语句体2;如果值为false就计算判断条件3的值
        ...
      * 如果没有任何判断条件为true,就执行语句体n+1

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第7张图片


⭐代码演示

public class Main {
   public static void main(String[] args) {
        int a=10;
        int b=10;
        if(a>b){
            System.out.println("a比b大");
        }else if (a<b){
            System.out.println("a比b小");
        }else {
            System.out.println("a等于b");
        }      
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第8张图片


⚡if语句的注意事项⚡

       1. if语句中,如果大括号控制的是一条语句,大括号可以省略不写

       2. if语句的()和 {} 之间不要写分号

⭐注意事项1演示

public class Main {
    public static void main(String[] args) {

        int a=15;
        int b=12;
        if(a>b)
            System.out.println("a大于b");      //一条if判断时可不写{}大括号

    }
}


【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第9张图片


⭐注意事项2演示

public class Main {
    public static void main(String[] args) {
        int a=6;
        int b=12;
        if(a>b);      //加了;号表示一条语句的结束,下面的内容就不受if的控制了,不管满不满足条件都会执行

        {
            System.out.println("a大于b");
        }


    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第10张图片


❓等级成绩练习

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第11张图片

//答案在最后

2、switch语句

什么是switch语句?

        switch条件语句,switch条件语句是一个很常用的选择语句,
        和if 条件语句不同,它只能针对某个表达式的值做出判断,从而决定程序执行哪一个代码

switch语句格式和说明

     格式:
        switch(表达式) {
        
         case1:
	       语句体1;
	       break;
	       
         case2:
	       语句体2;
	       break;default:	
	       语句体n+1;
	       break;
          }



* 格式说明:

      表达式:(将要匹配的值) 取值为byteshortintchar ,JDK5以后可以是枚举,JDK7以后可以是String

      case:后面跟的是要和表达式进行比较的值 (被匹配的值)
      
      break:表示中断,结束的意思,用来结束switch语句
      
      default:表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似



执行流程:

       1.拿着表达式的值,依次和case后面的值进行匹配,匹配成功,就会执行对应的语句,在执行的过程中,遇到break就会结束
       
       2.如果所有的case都不匹配,就会执行default里面的语句体,然后程序结束掉


⭐代码演示1

public class Main{
    public static void main(String[] args) {
        int week =5;
        switch (week) {
            case 1:
                System.out.println("星期一");
                break;
            case 2:
                System.out.println("星期二");
                break;
            case 3:
                System.out.println("星期三");
                break;
            case 4:
                System.out.println("星期四");
                break;
            case 5:
                System.out.println("星期五");
                break;
            case 6:
                System.out.println("星期六");
                break;
            case 7:
                System.out.println("星期天");
                break;
            default:
                System.out.println("输入的数字不正确...");
                break;
        }
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第12张图片


⭐代码演示2简写格式

public class Main{
    public static void main(String[] args) {
        int week=2;
        switch(week) {
            case 1:
            case 2:
            case 3:
            case 4:
            case 5:
                //当week满足值1、2、3、4、5中任意一个时,处理方式相同
                System.out.println("今天是工作日");
                break;

            case 6:
            case 7:
                //当week满足6、7中任意一个时,处理方式相同
                System.out.println("今天是休息日");
                break;
        }
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第13张图片


⚡switch的注意事项⚡

          1.case后面的值不允许重复
     
          2.case后面的值只能是常量,不能是变量
     
          3.switch无论怎么变都是要先要匹配表达式,看有没有相同的,没有就执行 
            default, 还有看有没有break

⭐注意事项1演示

public class Main{
    public static void main(String[] args) {
        int week=2;
        switch (week){
            case 1:
                System.out.println("星期一");
                break;

            case 2:
                System.out.println("星期二");
                break;

            case  2:
                System.out.println("星期二");
                break;
        }

    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第14张图片


⭐注意事项2演示

public class Main{
    public static void main(String[] args) {
        int week=2;
        int a=1;
        switch (week){
            case  a:
                System.out.println("星期一");
                break;

            case  2:
                System.out.println("星期二");
                break;
        }
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第15张图片


⭐注意事项3演示

public class Main{
    public static void main(String[] args) {
        int week=5;
        

        switch (week){
            default :
                System.out.println("输入的数字有误");

            case 1:
                System.out.println("星期一");
                break;

            case  2:
                System.out.println("星期二");
                break;

            case  3:
                System.out.println("星期三");
                break;


        }
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第16张图片


switch扩展

           jdk14+开始,switch语句对case进行了特殊支持

import java.util.Scanner;

public class Main{
    public static void main(String[] args) {


        Scanner rd=new Scanner(System.in);

        int week=rd.nextInt();

        switch (week){

            case 1,2,3,4,5:
                System.out.println("工作日");
                break;

            case  6,7:
                System.out.println("休息日");
                break;

            default:
                System.out.println("输入有误");
                break;
        }
    }
}

【JavaEE进阶序列 | 从小白到工程师】JavaEE中的流程控制语句里的分支语句 if与switch语句_第17张图片


❓志愿者意愿练习

在这里插入图片描述


//答案在末尾喔

习题答案


等级成绩答案

import java.util.Scanner;

public class Main {
    public static void main(String[] args) {

        Scanner rd=new Scanner(System.in);

        int a=rd.nextInt();

        if(a>=90){
            System.out.println("A");
        }else if(a>=80&&a<=89){
            System.out.println("B");
        }else if(a>=70&&a<=79){
            System.out.println("C");
        }else if(a>=60&&a<=69){
            System.out.println("D");
        }else{
            System.out.println("E");
        }
    }
}

志愿者意愿答案

import java.util.*;
public class Main{
public static void main (String[] args){
	Scanner rd=new Scanner(System.in);
	String a=rd.next();
	switch (a) {
	case "Y":
	case "y":
		System.out.println("Willing");
		break;
	case "N":
	case "n":
		System.out.println("Unwilling");
		break;
	}
}
}

作者:KJ.JK

文章对你有所帮助的话,欢迎给个赞或者 star,你的支持是对作者最大的鼓励,不足之处可以在评论区多多指正,交流学习

ItVuer - 免责声明 - 关于我们 - 联系我们

本网站信息来源于互联网,如有侵权请联系:561261067@qq.com

桂ICP备16001015号