我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Java程序顺序结构中逻辑控制语句详解流程

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Java程序顺序结构中逻辑控制语句详解流程

看前欣赏美图!

在这里插入图片描述

上才艺!

目录 一.顺序结构二.分支结构1.if语句2.switch 语句 三. 循环结构1 .while 循环2. break3. continue4.for循环5.do while循环 四.输入输出1.输出到控制台2 .从键盘输入 五.练习

一.顺序结构

顺序结构比较简单. 像我们之前写过的代码就是顺序结构的, 按照代码书写的顺序一行一行执行就可以了


        System.out.println("1");
        System.out.println("2");
        System.out.println("3");
        System.out.println("4");    //顺序结构`

结果:

在这里插入图片描述

二.分支结构

1.if语句

基本语法形式1

在这里插入图片描述

基本语法形式2

在这里插入图片描述

基本语法形式3

在这里插入图片描述

代码示例: 判定一个数字是奇数还是偶数


 public static void main(String[] args) {
        int n = 10;
        if(n % 2 == 0){  //黄色框框是一个警告,计算机觉得它一定是真的
            System.out.println("偶数");
        }
        else{
            System.out.println("奇数");
        }
    }

结果:

在这里插入图片描述

2.switch 语句

基本语法:

switch(整数|枚举|字符|字符串){
case 内容1 : {
内容满足时执行语句;
[break;]
}
case 内容2 : {
内容满足时执行语句;
[break;]
}

default:{
内容都不满足时执行语句;
[break;]
}
}

代码示例: 根据 day 的值输出星期


public static void main(String[] args) {
        int day = 1;
        switch(day) {
          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;
        }
    }

结果:

在这里插入图片描述

根据 switch 中值的不同, 会执行对应的 case 语句. 遇到 break 就会结束该 case 语句.
如果 switch 中的值没有匹配的 case, 就会执行 default 中的语句.
我们建议一个 switch 语句最好都要带上 default
注意事项1 break 不要遗漏, 否则会失去 “多分支选择” 的效果
注意事项2 switch 中的值只能是 整数|枚举|字符|字符串
注意事项3 switch 不能表达复杂的条件
注意事项4 switch 虽然支持嵌套, 但是很丑~

三. 循环结构

1 .while 循环

基本语法格式:
while(循环条件){
循环语句;
}
循环条件为 true, 则执行循环语句; 否则结束循环。
代码示例1: 计算 1 - 100的数字之和


 public static void main(String[] args) {
        int n = 1;
        int result = 0;
        while (n <= 100) {
            result += n;
            n++;
        }
        System.out.println(result);
    }

结果:

在这里插入图片描述

代码示例2: 计算 1! + 2! + 3! + 4! + 5!


public static void main(String[] args) {
        int num = 1;
        int sum = 0;
// 外层循环负责求阶乘的和
        while (num <= 5) {
            int factorResult = 1;
            int tmp = 1;
            // 里层循环负责完成求阶乘的细节.
            while (tmp <= num) {
                factorResult *= tmp;
                tmp++;
            }
            sum += factorResult;
            num++;
        }
        System.out.println("sum = " + sum);
    }

结果:

在这里插入图片描述

这里我们发现, 当一个代码中带有多重循环的时候, 代码的复杂程度就大大提高了. 而比较复杂的代码就更容易出错.
后面我们会采用更简单的办法来解决这个问题

注意事项

  • 和 if 类似, while 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上 { }
  • 和 if 类似, while 后面的 { 建议和 while 写在同一行.
  • 和 if 类似, while 后面不要多写 分号, 否则可能导致循环不能正确执行

int num = 1; 
while (num <= 10); { 
 System.out.println(num); 
 num++; 
}

// 执行结果
[无任何输出, 程序死循环]

此时 ; 为 while 的语句体(这是一个空语句), 实际的 { } 部分和循环无关. 此时循环条件 num <= 10 恒成立, 导致代码死循环了.

2. break

break 的功能是让循环提前结束.

代码示例: 找到第一个 3 的倍数


 //找到第一个被3整除的数
    public static void main(String[] args) {
        int i = 1;
        while(i<=10){
            if(i%3==0){
                System.out.println(i);
                break;  //结束所有的循环
            }
            i++;
        }
    }

结果:

在这里插入图片描述

3. continue

continue 的功能是跳过这次循环, 立即进入下次循环.
代码示例: 找到 1-10中所有 3 的倍数


 public static void main(String[] args) {
        int i = 1;
        while(i<=10){
            if(i%3!=0){
                i++;
               continue;  //结束本趟循环
            }
            System.out.println(i);
            i++;
        }
    }

结果:

在这里插入图片描述

4.for循环

基本语法
for(表达式1;表达式2;表达式3){
循环体;
}
表达式1: 用于初始化循环变量.
表达式2: 循环条件.
表达式3: 更新循环变量.
相比于 while 循环, for 循环将这三个部分合并在一起, 写代码时不容易遗漏.

**代码示例1:**计算1-100的和


 public static void main(String[] args) {
        int sum = 0;
        for (int i = 1; i <= 100; i++) {
            sum += i;
        }
        System.out.println(sum);
    }

结果:

在这里插入图片描述

代码示例2: 计算 5 的阶乘


 public static void main(String[] args) {
        int result = 1;
        for (int i = 1; i <= 5; i++) {
            result *= i;
        }
        System.out.println("result = " + result);
    }

结果:

在这里插入图片描述

注意事项 (和while循环类似)

  • 和 if 类似, for 下面的语句可以不写 { } , 但是不写的时候只能支持一条语句. 建议还是加上 { }
  • 和 if 类似, for 后面的 { 建议和 while 写在同一行.
  • 和 if 类似, for 后面不要多写 分号, 否则可能导致循环不能正确执行

5.do while循环

基本语法
do{
循环语句;
}while(循环条件);
先执行循环语句, 再判定循环条件

**代码示例:**打印1-10


public static void main(String[] args) {
        int num = 1;
        do {
            System.out.print(num+" ");
            num++;
        } while (num <= 10);
    }

结果:

在这里插入图片描述

有一点注意一下


public static void main21(String[] args) {
        int i=0;
        do{
            System.out.println("haha");
        }while(i!=0);   //最少都要执行一次
    }

在这里插入图片描述

它最少都要执行一次。

注意事项

  • do while 循环最后的分号不要忘记
  • 一般 do while 很少用到, 更推荐使用 for 和 while.

四.输入输出

1.输出到控制台

基本语法

System.out.println(msg); // 输出一个字符串, 带换行
System.out.print(msg); // 输出一个字符串, 不带换行
System.out.printf(format, msg); // 格式化输出

println 输出的内容自带 \n, print 不带 \n
printf 的格式化输出方式和 C 语言的 printf 是基本一致的

代码示例:


 public static void main(String[] args) {
        System.out.println("hello world");
        System.out.print("hello world ");
        int x = 10;
        System.out.printf("x = %d\n", x);
    }

结果:

在这里插入图片描述

格式化字符串

在这里插入图片描述

没必要太用心记,用的时候查一下就知道了。

2 .从键盘输入

使用 Scanner 读取字符串/整数/浮点数
代码示例:


public static void main(String[] args) {
        Scanner sc = new Scanner(System.in);
        System.out.println("请输入你的姓名:");
        String name = sc.nextLine();
        System.out.println("请输入你的年龄:");
        int age = sc.nextInt();
        System.out.println("请输入你的工资:");
        float salary = sc.nextFloat();
        System.out.println("你的信息如下:");
        System.out.println("姓名: "+name+"\n"+"年龄:"+age+"\n"+"工资:"+salary);
        sc.close();
    }

结果:

在这里插入图片描述

五.练习

这里给大家做几个高频练习题:

1.根据年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上)
代码实现:


 public static void main5(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int Age = scanner.nextInt();
        while(Age>0) {
            if ( Age <= 18) {
                System.out.println("少年");
                break;
            } else if (Age > 18 && Age <= 28) {
                System.out.println("青年");
                break;
            } else if (Age > 28 && Age <= 55) {
                System.out.println("中年");
                break;
            } else {
                System.out.println("老年");
                break;
            }
        }
    }

打印结果:

在这里插入图片描述

2. 判定一个数字是否是素数
代码实现:


  public static void main4(String[] args) {
        Scanner scanner = new Scanner(System.in);
        int Num = scanner.nextInt();
        int i;
        for (i = 2; i < Num; i++) {
            if (Num % i == 0) {
                System.out.println(Num + "不是素数");
                break;
            }
        }
        if (Num==i){
            System.out.println(Num+"是素数");

        }
    }

打印结果:

在这里插入图片描述

3.输出乘法口诀表

代码实现:


 public static void main(String[] args) {
        for (int i = 1; i <= 9 ; i++) {
            for (int j = 1; j <= i ; j++) {
                System.out.print(i+"*"+j+"="+i*j+" ");
            }
            System.out.println();
        }
    }

打印结果:

在这里插入图片描述

4. 编写代码模拟三次密码输入的场景。 最多能输入三次密码,密码正确,提示“登录成功”,密码错误, 可以重新输入,最多输入三次。三次均错,则提示退出程序

代码实现:


 public static void login(){
    Scanner scanner = new Scanner(System.in);
    int count = 3;
    while(count != 0){
        System.out.println("请输入你的密码:");
        String password = scanner.nextLine();
        if(password.equals("123456")){
            System.out.println("登陆成功了!");
            break;
        }else{
            count--;
            System.out.println("你输错密码了,你还有 "+count+"次机会!");
        }
      }
    }

    public static void main16(String[] args) {

    login();
    }

打印结果:

在这里插入图片描述

这里用到了方法,后面在说。

5.猜数字游戏

代码实现:


public static void main(String[] args) {

        Random random = new Random();
        int rand = random.nextInt(100);
        Scanner scanner = new Scanner(System.in);
        while (true) {
            System.out.print("请输入你要猜的数字:");
            int n = scanner.nextInt();
            if (n < rand) {
                System.out.println("低了");
            } else if (n > rand) {
                System.out.println("高了");
            } else {
                System.out.println("猜对了");
                break;
            }
        }
    }

打印结果:

在这里插入图片描述

都看到这里了,点个赞在走呗!
谢谢大家!

到此这篇关于Java程序中逻辑控制语句详解流程的文章就介绍到这了,更多相关Java 逻辑控制内容请搜索编程网以前的文章或继续浏览下面的相关文章希望大家以后多多支持编程网!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Java程序顺序结构中逻辑控制语句详解流程

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Java流程控制之顺序结构的示例分析

这篇文章主要介绍了Java流程控制之顺序结构的示例分析,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。Java中的流程控制语句可以这样分类:顺序结构,选择结构,循环结构。1.关
2023-06-22

怎么在Java中控制程序的逻辑

怎么在Java中控制程序的逻辑?相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。Java的优点是什么1. 简单,只需理解基本的概念,就可以编写适合于各种情况的应用程序;2. 面向对
2023-06-14

Python中的程序流程控制语句怎么用

这篇文章主要介绍了Python中的程序流程控制语句怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Python中的程序流程控制语句怎么用文章都会有所收获,下面我们一起来看看吧。一、分支语句在Python中分
2023-06-29

深入掌握Python中的流程控制语句及逻辑运算

深入理解Python中的流程控制语句和逻辑运算符在Python编程语言中,流程控制语句和逻辑运算符是实现条件判断和循环的关键部分。通过灵活运用流程控制语句和逻辑运算符,我们可以根据不同的条件执行不同的代码块,以及重复执行特定的代码块。在本
深入掌握Python中的流程控制语句及逻辑运算
2024-01-20

掌握这些流程控制语句,确保你的Python程序顺利执行!

想要顺利编写Python程序?先掌握这些流程控制语句!Python是一种简洁、优雅的编程语言,广泛应用于各个领域,从Web开发到数据科学,无所不包。而在编写Python程序的过程中,流程控制语句起到了至关重要的作用,可以帮助程序按照我们的
掌握这些流程控制语句,确保你的Python程序顺利执行!
2024-01-20

Golang中常用的流程控制语句详解

Golang中常用的流程控制语句详解Golang作为一门面向并发的静态编程语言,提供了丰富的流程控制语句来实现复杂的逻辑和条件判断。本文将详细介绍Golang中常用的流程控制语句,包括if语句、switch语句、for语句等,并且提供具体的
Golang中常用的流程控制语句详解
2023-12-23

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录