Java流程控制语句

java流程控制语句 流程控制与循环 阅读详情

程序的基本结构

 Java的语言控制结构归为7类:1.if-else语句。2.switch-case语句。3.while语句。4.do-while语句。5.for语句。6.break语句。7.continue语句。这7种控制结构可以分为选择结构和循环结构二种,他们和顺序结构一起,构成了Java程序全部的控制流程。

顺序结构

 顺序结构:就是指没有特殊控制结构时候程序结构。顺序结构以语句(带分号的句子)为单位,从左到右,由上到下依次执行。

 顺序结构工作原理如下图:*
在这里插入图片描述

选择和分支结构

 选择结构:根据条件判断结果来决定程序流程。

选择结构的工作原理如下图:
在这里插入图片描述 Java使用if语句、if-else语句和switch-case语句进行选择。

条件语句:if-else

  1. if语句
    语法
 if(条件表达式){
   语句块;
 }

 上述语法中,条件表达式可以是任何一种逻辑表达式,结果为true则执行大括号{ }中的语句块,然后顺序执行后面的其他代码;反之则跳过大括号{ }中的语句块,直接执行后面的其他代码。

例如

import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生的成绩");
        int score = sc.nextInt();
        System.out.println("你的考试成绩是:"+score);
        if(score < 60){
            System.out.println("对不起,你的成绩不合格");
        }
    }
}
  1. if-else语句
    语法
 if(条件表达式){
    语句块1;
 }else{
    语句块2;
 }

 上述语法中,在原有的if语句基础上添加else语句,原有功能不变,但当条件表达式的返回值为false时,程序将执行else中的语句块2。

例如

import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生的成绩");
        int score = sc.nextInt();
        System.out.println("你的考试成绩是:"+score);
        if(score < 60){
            System.out.println("对不起,你的成绩不合格");
        }else{
            System.out.println("恭喜你,你的成绩合格了");
        }
    }
}
  1. 多重if-else语句
     多重if-else语句是指:一条if语句,后面跟多条else语句,代表多种不同的判断条件,执行符合的那个判断条件后紧跟的语句块。

语法

  if(条件表达式1){
      语句块1;
  }else if(条件表达式2){
      语句块2;
  }else{
      语句块3;
  }

 当满足条件表达式1的时候,执行语句块1;满足条件表达式2的话,执行语句块2;如果都不满足,则执行语句块3。

import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生的成绩");
        int score = sc.nextInt();
        System.out.println("你的考试成绩是:"+score);
        if(score < 60){
            System.out.println("对不起,你的成绩不合格");
        }else if(score >= 60 && score <70){
            System.out.println("你及格了");
        }else if(score >= 70 && score <80){
            System.out.println("你的成绩中等");
        }else if(score >=80 && score < 90){
            System.out.println("你的成绩优秀");
        }else{
            System.out.println("成绩格式错误,请重新输入");
        }
    }
}
  1. 嵌套if-else语句
    语法
if(条件表达式1){
  if(条件表达式2){
   语句块1;
  }else{
   语句块2;
  }
 }else{
  if(条件表达式3){
   语句块3;
  }else{
   语句块4;
  }
}

例如:

/**
 *判断学生成绩等级
*/
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生的成绩");
        int score = sc.nextInt();
        System.out.println("你的考试成绩是:"+score);
        if(score <0 || score > 100){
            System.out.println("成绩格式错误,请重新输入");
        }else{
            if(score < 60 ){
                System.out.println("对不起,你的成绩不合格");
            }else{
                if(score < 70){
                    System.out.println("你的成绩为及格");
                }else{
                    if(score < 80){
                        System.out.println("你的成绩为中等");
                    }else{
                        if(score < 90){
                            System.out.println("你的成绩为良好");
                        }else{
                            System.out.println("你的成绩为优秀");
                        }
                    }
                }
            }
        }
    }
}

分支语句:switch

 当选择的分支语句较多时,使用多个if-else语句嵌套的实现方式不够直观,尤其是层次较多时,编写条件将相对复杂且容易出错。Java语言提供了另一种分支选择语句——switch,用于解决多支选择问题。

语法:

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

语法说明
 1.switch后的整型表达式中,可以放入一个变量或者一个表达式,但是其结果只能是byte、short、int、和char类型的数据。
&emps;2.switch语句将从匹配的case语句开始向下执行所有的语句,而且无须考虑下面这些case是否匹配,知道遇到break为止,这种特点也被称为switch语句的开关特性。
&emps;3.default后紧跟的是可选(即可以省略)的语句,它接受除了与case标签匹配之外的其他值。

例如:

/**
 * 输入一个月份,判断季节
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输1~12的月份");
        int score = sc.nextInt();
        String season = "";
        switch (score){
            case 1:
            case 2:
            case 3:season = "春季";
            break;
            case 4:
            case 5:
            case 6:season = "夏季";
                break;
            case 7:
            case 8:
            case 9:season = "秋季";
                break;
            case 10:
            case 11:
            case 12:season = "冬季";
                break;
            default:System.out.println("月份输入错误");
            return;
        }
        System.out.println("当前月份是:"+score+"月,"+"处于"+season);
    }
}

多重if语句和switch语句的区别?
 多重if语句匹配的是一个运算结果为Boolean型的表达式,可以是一个范围,比如成绩在60到69之间,而switch语句中使用case匹配的时候,往往是一个整数值,匹配的是一个点。这就是二者的最大区别。另外,switch语句多数情况下执行效率要比if-else高。

循环结构

while语句

 while语句也被称为“当型循环语句”,其含义为:当条件满足时,执行某一段循环体。

语法:

  while(条件表达式){
     循环体;
  }

 while语句的执行顺序:
  1.计算条件表达式结果,当结果为true时执行循环体,否则跳出while循环。
  2.执行完循环体后,再次计算条件表达式的结果,决定是在次执行循环体还是退出循环。

while循环的流程如下图:
在这里插入图片描述例如

/**
 * 使用while语句计算1+2+3+。。+10的和
 * */
public class Demo_one {
    public static void main(String[] args) {
       int i = 1;
       int sum = 0;
       while(i <= 10){
           sum += i;
           i++;
       }
       System.out.println("和是:"+sum);
    }
}

do-while语句

 do-while语句又称为“直到型循环语句”,其含义为:不管条件是否满足,先执行一次循环体,然后再进行条件判断。这是与while循环的不同之处。

语法:

  do{
   循环体;
  }while(循环条件);

do-while循环的流程如下图:
在这里插入图片描述例如

/**
 * 使用do-while语句计算1+2+3+。。+10的和
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
       int i = 1;
       int sum = 0;
       do{
           sum += i;
           i++;
       }while(i <= 10);
       System.out.println("和是:"+sum);
    }
}

for语句

语法:

  for(表达式1;条件表达式;表达式2){
   循环体;
  }

 for语句的执行顺序:
  1.计算表达式1.通常情况下表达式1的赋值语句,作用是为了循环变量赋初值。
  2.计算条件表达式结果,如果结果为true则执行循环体,否则跳出循环。
  3.执行一次循环体后,在计算表达式,然后回到第二步。
 for循环的流程如下图:
在这里插入图片描述例如

/**
 * 使用for语句计算1+2+3+。。+10的和
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
       int sum = 0;
       for (int i=1;i<=10;i++){
           sum += i;
       }
       System.out.println("和是:"+sum);
    }
}

 for循环开始执行时,初始化变量i的值为1,i<10,条件成立,进入循环体累加sum,之后i++执行使i的值变成2。依次类推,直到i的值为11时,不满足循环条件,跳出循环体。

break语句

 break语句除了用于switch语句之外,还可以用于循环语句中,当循环语句中执行至break语句时将立即结束循环,执行循环体后面的语句。

例如:

/**
 * 循环录入学生5门课的成绩并计算平均分,如果某个分数为负数,停止录入并提示录入错误
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        int score; //每门课的成绩
        int sum = 0; //成绩总和
        int avg; //平均分
        boolean wrong = true;
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入学生姓名");
        String name = sc.next();
        //循环5次记录5门课的成绩
        for(int i = 0;i < 5; i++){
            System.out.println("请输入第"+(i+1)+"门课的成绩");
            score = sc.nextInt();
            if(score < 0){
                wrong = false;
                break;
            }
            sum = sum + score;
        }
        if(wrong){
            avg = sum/5;//计算平均分
            System.out.println(name+"的平均分是:"+avg);
        }else{
            System.out.println("成绩录入错误");
        }
    }
}

continue语句

 continue语句用于结束本次循环。再循环语句中执行至continue语句时,循环体中continue语句后面的语句不会被执行,然后直接进行下一次循环的判断与执行。

例如:

/**
 * 使用continue语句,循环录入成绩,并统计大于80分的学生比例
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        int score; //每门课的成绩
        int total; //班级人数
        int num = 0; //成绩大于80的人数
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入班级总人数");
        total = sc.nextInt();
        for(int i = 0;i < total; i++){
            System.out.println("请输入第"+(i+1)+"位学生的成绩");
            score = sc.nextInt();
            if(score < 80){
               continue;
            }
            num++;
        }
        System.out.println("80分以上的学生人数是:"+num);
        double rate = (double) num / total * 100;
        System.out.println("80分以上的学生所占比例是:"+rate);
    }
}

嵌套循环

 嵌套循环是指一个循环语句的循环体中包含另一个完整的循环语句。while语句、do-while语句以及for语句都可以互相嵌套一层或多层。

例如:

/**
 * 使用for循环,打印九九乘法表
 * */
import java.util.Scanner;
public class Demo_one {
    public static void main(String[] args) {
        for(int i=1;i<=9;i++){
            for(int j=1;j<=i;j++){
                System.out.print(i+"x"+j+"="+(i*j)+"\t");
            }
            System.out.println();
        }
    }
}
【Java】流程控制语句篇 本章节主要讲了 Java 流程控制语句的使用方法 阅读详情

相关推荐

大疆控制算法笔试复习指南:从PID到MPC核心考点解析

控制算法是无人机、机器人等智能装备实现自主运行的核心技术。从经典控制到现代控制,PID控制算法、LQR控制算法、预测控制算法(MPC)以及Stanley控制算法等,构成了工程实践中不可或缺的方法体系。理解其数学原理、适用条件与调参逻辑,是评估系统稳定性、动态响应与抗扰能力的基础。在无人机飞控、云台增稳、车载路径跟踪等典型场景中,这些算法直接决定了设备的实际性能表现。大疆等企业相关岗位的笔试,正是围绕上述核心知识点,考查候选人对控制系统本质的理解、数学推导能力以及工程实现素养。本文整理了一套覆盖理论基石、高频

weixin_33178839的博客 357

Java 程序的控制结构

Java 程序的控制结构

Withadream的博客 653

VLM,VLA,VLN的区别与联系

VLM 提供了理解世界的“眼睛和大脑”,VLN 赋予了这个智能体在空间中“移动的双腿”,而 VLA 则进一步赋予了它“灵巧的双手”来改变世界。三者共同构成了一个完整具身智能体的核心能力模块。

l0409044222的博客 1311

Java程序控制结构

在程序中,程序运行的流程控制决定程序是如何执行的,是我们必须掌握的,主要有三大流程控制语句1)顺序控制2)分支控制3)循环控制让程序有选择地执行,分支控制有三种1)单分支 if2)双分支 if-else3)多分支 if-else if -…-elseswitch (表达式) {case 常量1:语句块1;break;case 常量2:语句块2;break;…case 常量n:语句块n;break;default:default语句块;break;}

itzzan的博客 1171

航天仿真必看:如何用SOFA库实现高精度GCRS-ITRS坐标转换?避坑指南

本文深入解析了航天仿真中高精度GCRS-ITRS坐标转换的关键技术,重点介绍了SOFA库在天球系与轨道系转换中的权威应用。通过对比传统方法的误差来源,详细阐述了SOFA库的转换算法优势、工程实现步骤及误差控制策略,为航天器轨道仿真提供毫米级精度的解决方案。

7h6j5k4l3的博客 850

echarts实现3D地图——map3D

【代码】echarts实现3D地图——map3D。

xiaoququ的博客 7317

Java_第03章_流程控制语句

讲师:尚硅谷-宋红康(江湖人称:康师傅)

qq_52922453的博客 1601

Loupe Browser实战指南:解锁10xGenomics单细胞数据的可视化奥秘

本文提供了Loupe Browser的实战指南,帮助用户无需编程即可探索和可视化10xGenomics单细胞数据。文章详细介绍了从数据导入、界面导航到细胞亚群鉴定、差异基因分析的核心操作流程,并分享了高级技巧与避坑指南,是快速上手这一强大可视化工具的必备参考。

weixin_29313423的博客 206

JAVA--流程控制语句

本文系统介绍了Java中的流程控制语句,分为三类:选择语句、循环语句和跳转语句。选择语句包括if和switch语句,用于实现条件分支;循环语句包括for、while和do-while循环,用于重复执行代码块;跳转语句如break、continue和return,用于控制程序流程。文章详细阐述了各语句的语法结构、使用场景和区别,并提供了丰富的代码示例。其中特别比较了if与switch语句的差异,分析了三种循环的适用场景,还介绍了循环嵌套和迭代法的应用。这些流程控制语句共同构成了Java程序逻辑控制的基础。

2301_82163304的博客 801

用「OpenClaw」打造新媒体运营神器:小红书/公众号全自动选题→创作→排版→发布全流程

对于新媒体运营的从业者来说,AI不是要取代运营人员,而是把他们从繁琐的重复劳动中解放出来,专注于更核心的内容策略、用户运营、品牌建设,这才是AI在传统行业落地的真正价值。这是最终输出可发布内容的核心智能体,我们通过「OpenClaw」的Prompt工程,结合不同平台的排版规范,实现了一键生成符合要求的排版,完全替代人工重复劳动。这套系统的落地,不是技术的炫技,而是真正用AI解决了新媒体运营的核心痛点:用自动化替代重复的人工劳动,用数据决策替代经验主义,用全闭环执行替代纸上谈兵的建议。

专注于Python爬虫开发,分享爬虫技巧、项目实战与反爬经验,使用Scrapy、BeautifulSoup等工具,解决数据抓取难题。 198

xilinx原语及bank简介

图8是HP bank与HR bank的IO模块,其中PAD是FPGA的金属管脚,IOB是输入、输出引脚的控制模块。此时使用原语就可以只调用需要的组件,不需要去考虑其余组件参数设置,就方便很多,借助此次机会就对IDDR、ODDR、IDELAYE2、ODELAYE2、IDELAYCRTL、ISERDESE、OSERDESE等几个原语做了简要了解,并对原语的各个模式进行了仿真,本文最初是介绍IDDR的,但在介绍IDDR这些原语之前,还需要了解一下7系列FPGA bank的分类和区别,所以就有了本文。

qq_43416206的博客 412

Java的流程控制语句

Java的流程控制语句分为3大类:If…else语句,switch语句 ,循环语句。 if…else语句是我们最常用的一种流程控制语句,一般用在判断或条件选择。 If…else语句有4种形式:if语句 ,if…else语句 , if…else if…else语句,嵌套的if…else语句。 break : 结束循环 continue : 结束本次循环,进入下一次循环 return : 结...

kungc1的博客 280

【目标检测】基于yolov5的水下垃圾检测(附代码和数据集,7684张图片)

【目标检测】基于yolov5的水下垃圾检测(附代码和数据集)

学无止境、积少成多、厚积薄发 4182

java流程控制语句练习题_Java流程控制语句

接下来记录一下Java流程控制语句,包括条件语句(if-else)、选择语句(switch-case)和循环语句(while和for)。全文使用例子来记录,可以更好的理解上述流程控制语句。流程控制语句流程控制结构有顺序结构,分支结构和循环结构。(1)顺序结构,代码从上到下从左到右执行(2)分支结构,有if、if-else、if-else if,switch-case(3)循环结构,有while,d...

weixin_42514433的博客 453

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

java 流程控制语句_Java流程控制语句的意义

Java中的一些术语都是比较晦涩难懂的,但艺术源于生活,抽象来自具象,只要用心去理解,就会发现ta远来如此简单。Java经典入门教程:Java轻松入门经典教程​ke.qq.com在我们学完基本数据类型之后,一般都是学流程控制语句。何为流程控制?做任何事情都要遵循一定的原则,吃饭要先有碗筷,穿衣要有衣服,没有前面的条件就无法进行后面的行为。程序设计也是如此,需要有流程控制来决定“做什么”,“怎么做”...

weixin_35715490的博客 190

SAP B1中文培訓教材_SDK

公司内部培训资料,对开发工具 ,DIAPI, UIAPI,Add-ON有详细解说

Java流程控制语句详解

文章目录一、从键盘录入数据1. 导包2. 创建一个从键盘录入的对象3. 接收键盘输入数据二、顺序结构语句1. 流程控制概念2. 流程控制语句的分类3. 顺序结构语句三、选择结构语句1. If 语句2. if 语句练习3. switch语句4. switch语句练习5. if 语句和 switch 语句的区别三、循环语句1. for 循环2. for 循环练习3. while循环4. while循环...

qq_44495081的博客 2479

C# WinForm 基于DirectShow.dll编写的程序,可边预览边保存视频,音频和图片

基于微软的DirectShow.dll的二次开发1.自动识别连接的摄像头跟麦克风且可以对其进行选择(默认选中第一个)2.可录制wmv和avi两种格式的视频并且都带有音频,avi可以录制的分辨率和帧数进行选择,wmv默认进行了淸晰度优化如不喜欢可去除代码中有相关提示3.可在预览点开之后进行拍照,也可边录制视频边拍照4.添加了视频和音频的压缩功能(酌情使用)这次二次开发发现C#对DirectShow的相关信息太少,这次做完也不敢藏私共享出来,还望大家指正

(五)Java流程控制语句

流程控制语句是Java编程的基础,也是构建复杂逻辑的核心工具。从简单的if条件判断到复杂的循环结构,再到现代Java中的函数式流程控制,掌握这些语句对于编写清晰、高效、可维护的代码至关重要。在实际开发中,应根据具体场景选择合适的流程控制结构,并遵循最佳实践。随着Java语言的演进,新的特性如switch表达式、模式匹配等不断引入,为我们提供了更多表达程序逻辑的方式。记住,好的流程控制应该像一篇好文章一样,逻辑清晰、层次分明、易于理解。

MeyrlNotFound的博客 1112
上一篇: Java数据类型、变量和运算符
下一篇: Java类与对象基础
与黑夜为伍
博客等级 码龄7年 19粉丝 80原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值