java控制流程

控制流程

概述

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

流程控制语句分类

  • 顺序结构
  • 选择结构
  • 循环结构

顺序结构概述

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

顺序结构图

 

 

选择结构

  • 也被称为分支结构。
  • 选择结构有特定的语法规则,代码要执行具体的逻辑运算进行判断,逻辑运算的结果有两个,所以产生选择,按照不同的选择执行不同的代码。
  • Java语言提供了两种选择结构语句 if语句 switch语句

if语句

if语句有三种格式
if语句 第一种格式:

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

  • 执行流程

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

     

     

if语句 第二种格式

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

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

 

 

  • 我们前面讲解过三元运算符,它根据比较判断后,给出的也是两个结果,所以,这种情况和if语句的第二种格式很相似,他们在某些情况下应该是可以相互转换的。
  • if语句第二种格式和三元运算符
    • 三元运算符的操作都可以使用if语句改进,反之不成立
    • 什么时候不成立呢?
      • 当if语句控制的语句体是一条输出语句的时候,就不成立。因为三元运算符是一个运算符,必须要求有一个结果返回。 而输出语句却不能作为一个返回结果。
if语句 第三种格式

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

  • 执行流程
    • 首先判断关系表达式1看其结果是true还是false
    • 如果是true就执行语句体1
    • 如果是false就继续判断关系表达式2看其结果是true还是false
    • 如果是true就执行语句体2
    • 如果是false就继续判断关系表达式…看其结果是true还是false …
    • 如果没有任何关系表达式为true,就执行语句体n+1。

 

 

 

 

switch语句

JDK8及以前写法

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

JDK14的写法
不带返回值

switch(表达式) { case 值1,值2,值3 -> 语句体1; case 值4,值5,值6 -> 语句体2; case 值7 -> 语句体3; }

通过yield返回一个新值

String result = switch(表达式) { case 值1,值2,值3 -> 语句体1; yield 返回值1; case 值4,值5,值6 -> 语句体2; yield 返回值2; case 值7 -> 语句体3; yield 返回值3; }

posted @   根仔  阅读(49)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示