美文网首页
Java基础系列8-流程语句之顺序及选择结构

Java基础系列8-流程语句之顺序及选择结构

作者: 只是甲 | 来源:发表于2021-08-11 14:01 被阅读0次

一.流程语句概述

  在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运行结果有直接的影响。所以,我们必须清楚每条语句的执行流程。而且,很多时候我们要通过控制语句的执行顺序来实现我们要完成的功能。

流程控制语句分类:

  1. 顺序结构
  2. 选择结构
  3. 循环结构

二. 顺序结构语句

  程序中最简单最基本的流程控制,没有特定的语法结构,按照代码的先后顺序,依次执行,程序中大多数的代码都是这样执行的。

顺序结构流程图:


image.png

三. 选择结构语句 【if、switch】

3.1 if选择结构语句

3.1.1 第一种格式

if语句执行流程:

  1. 判断关系表达式看其结果是true还是false
    1)如果是 true 就执行语句体
    2)如果是 false 就不执行语句体

选择结构 if语句第一种格式:

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

//实例
if (a == b) {
   System.out.println("a等于b");
}

//或者
if (关系表达式) 语句体;
//实例
if (a == b) System.out.println("a等于b");

执行流程图:


image.png

代码:

package Java_study;

public class if1 {
    public static void main(String[] args) {
        // 开始
        System.out.println("开始");
        
        // 定义两个int类型的变量
        int a = 10;
        int b = 20;
        //判断两个变量是否相等
        //10 == 20 => false => 不执行语句体
        if (a == b) {
            //未执行此预聚体
            System.out.println("a等于b");
        }
        
        //定义变量
        int c = 10;
        // 10 == 10 => true => 执行语句体
        if (a ==c) {
            //a 等于 c
            System.out.println("a等于c");
        }
        
        //结束
        System.out.println("结束");
    }

}

测试记录:

开始
a等于c
结束

3.1.2 第二种格式

if语句执行流程:

  1. 首先判断关系表达式看其结果是true还是false
    1)如果是true就执行语句体1
    2)如果是false就执行语句体2

选择结构 if语句第二种格式:

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

//实例
if (a % 2 == 0) {
    System.out.println("a是偶数");
} else {
    System.out.println("a是奇数");
}

执行流程图:


image.png

代码:

package Java_study;

public class if2 {
    public static void main(String[] args) {
        
        System.out.println("开始");
        //定义一个变量
        int a = 100;
        //重新给a赋值
        a = 99;
        
        // a %2 = 1 关系表达式结果为false 执行语句体2
        if (a % 2 == 0) {
            //语句体1
            System.out.println("a是偶数");
        } else {
            // [执行]语句体2
            System.out.println("a是奇数");
        }
        System.out.println("结束");
    
    }

}

测试记录:

开始
a是奇数
结束

3.1.3 第三种格式

执行流程:

  1. 首先判断关系表达式1看其结果是true还是false
    1)如果是true就执行语句体1
    2)如果是false就继续判断关系表达式2看其结果是true还是false
    3)如果是true就执行语句体2
    4)如果是false就继续判断关系表达式…看其结果是true还是false
    5)…(按顺序结构依次判断关系表达式)…
    6)如果以上表达式都为false,就执行语句体n+1

选择结构 if语句第三种格式:

if(关系表达式1) {
             语句体1;
    }else  if (关系表达式2) {
             语句体2;
    }else  if (关系表达式3) {
             语句体3;
    …
    else {
             语句体n+1;
    }
    
//实例
if (x >= 3) {
   y = 2 * x + 1;
   // x=-5不满足表达式
} else if (x >= -1 && x < 3) {
   y = 2 * x;
   // x=-5满足条件 x<-1
} else if (x < -1) {
   //执行语句体:y = 2*(-5)-1 = -11
   y = 2 * x - 1;
}else{
   y = 0;
}   

执行流程图:


image.png

代码:

package Java_study;

public class if3 {
    public static void main(String[] args) {
        System.out.println("开始");
        
        //根据给定的x值,计算出y的值
        int x = 5;
        x = 0;
        x = -5;
        
        //定义变量y
        int y;
        //x = -5不满足表达式x>= 3
        if (x >= 3) {
            y = 2 * x + 1;
            // x=-5 不满足表达式
        } else if (x >= -1 && x < 3) {
            y = 2 * x;
            // x = -5不满足表达式
        } else if (x < -1) {
            //执行预聚体: y = 2*(-5)-1 = -11
            y = 2* x -1;
        } else {
            y = 0;
        }
        System.out.println("y:" + y);
        System.out.println("结束");
    }

}

测试记录:

开始
y:-11
结束

3.2 switch语句

switch选择结构语法:

  1. 表达式的取值:byte、short、int、char
    1)JDK5以后可以是枚举值
    2)JDK7以后可以是String
  2. case后面跟的是要和表达式进行比较的值
  3. 语句体部分可以是一条或多条语句
  4. break表示中断,结束的意思,可以结束switch语句
  5. default语句表示所有情况都不匹配的时候,就执行该处的内容,和if语句的else相似。

执行流程:

  1. 计算出表达式的值
  2. 和case依次比较,一旦有对应的值,就会执行相应的语句,在执行的过程中,遇到break就会结束。
  3. 如果所有的case都和表达式的值不匹配,就会执行default语句体部分,然后程序结束掉。

选择结构 switch语句格式:

switch(表达式) {
        case 值1:
        语句体1;
            break;
        case 值2:
            语句体2;
            break;
        case 值3:
            语句体3;
            break;
        ...
        default:
            语句体n+1;
            break;
}

//实例
switch (weekDay) {
     case 1:
         System.out.println("星期一");
         break;
     case 2:
         System.out.println("星期二");
         break;
     default:
         System.out.println("其他");
         break;
}

//case穿透写法
switch (weekDay) {
     case 1:
     case 2:
     case 3:
     case 4:
     case 5:
         System.out.println("工作日");
         break;
     case 6:  
     case 7:
         System.out.println("休息日");
         break;
     default:
         System.out.println("日期错误");
         break;
}

执行流程图:


image.png

代码:

package Java_study;
import java.util.Scanner;

public class switch1 {
    public static void main(String[] args) {
        // 创建键盘输入数据
        Scanner sc = new Scanner(System.in);
        
        // 给出提示
        System.out.println("请输入一个整数(1-7):");
        int weekDay = sc.nextInt();
        
        // 用switch语句实现判断
        switch (weekDay) {
        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;
        }
    }

}

测试记录:

请输入一个整数(1-7):
2
星期二

相关文章

  • Java基础系列8-流程语句之顺序及选择结构

    一.流程语句概述   在一个程序执行的过程中,各条语句的执行顺序对程序的结果是有直接影响的。也就是说程序的流程对运...

  • Java程序运行流程

    Java语句中运行流程分为3种1.顺序结构2.分支结构3.循环结构 顺序结构 及按着顺序执行 分支结构 分支机构又...

  • 流程

    概念:流程是指程序步骤执行的先后顺序 分类: 顺序结构 选择结构 循环结构 顺序结构 选择结构 if语句 if (...

  • 赶紧收藏!这些Java中的流程控制知识你都不知道,你凭什么涨薪?

    Java的流程控制 基础阶段 目录: 用户交互Scanner 顺序结构 选择结构 循环结构 break & con...

  • Java入门:程序结构

    Java程序结构 顺序结构 由上至下,按顺序执行分支语句实现流程控制,根据一定的条件有选择的执行或者跳过特定的语句...

  • 4-Java基础语法-流程控制之选择结构

    流程控制;流程控制语句: 顺序、选择、循环 什么是顺序? 运行结果: 顺序结构,一句一句按着顺序执行。 选择结构:...

  • Chapter4 Java流程控制之选择结构

    Lecture1 流程控制概述 流程控制语句种类:顺序、选择、循环;选择结构--if结构、if-else结构、多重...

  • Java分支结构

    顺序结构只能顺序执行,不能进行判断和选择,因此需要分支结构。 Java有两种分支结构: if 语句switch语句...

  • Java随机:分支结构

    顺序结构只能顺序执行,不能进行判断和选择,因此需要分支结构。Java有两种分支结构: if语句 switch语句 ...

  • 重拾Java (三)流程控制语句

    重拾Java第三篇,流程控制语句,基础喔 分支结构 选择结构 循环结构 while循环,while(判断条件),当...

网友评论

      本文标题:Java基础系列8-流程语句之顺序及选择结构

      本文链接:https://www.haomeiwen.com/subject/enwyyltx.html