Java-逻辑控制语句

这篇具有很好参考价值的文章主要介绍了Java-逻辑控制语句。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、顺序结构

在Java语法中,顺序结构是一种基本的程序控制结构,用于按照代码的编写顺序依次执行语句。

顺序结构没有条件或循环的判断,它的执行是线性的,从上到下依次执行每条语句。

代码示例

public static void main(String[] args) {
        // 第一条语句
        System.out.println("这是第一条语句。");

        // 第二条语句
        System.out.println("这是第二条语句。");

        // 第三条语句
        System.out.println("这是第三条语句。");

        // ... 其他语句

        // 最后一条语句
        System.out.println("这是最后一条语句。");
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

二、分支结构

2.1 if 语句

在Java语法中,if语句是一种条件控制语句,用于根据一个布尔表达式的值(true或false)来执行不同的代码分支。

以下是 if 语句的几种常见语法格式:

  1. 语法格式1:单个if语句
if (condition) {
    // 如果条件成立,执行的代码块
}
  • condition 是一个布尔表达式,它的值为true或false。

这是最基本的 if 语句格式,只包含一个 if 条件和一个执行代码块。如果条件满足(即为true),则执行代码块中的语句。

  1. 语法格式2 :if-else语句
if (condition) {
    // 如果条件成立,执行的代码块
} else {
    // 如果条件不成立,执行的代码块
}

if-else语句包含一个 if 条件和两个执行代码块,当条件满足时执行 if 代码块,否则执行 else 代码块。

代码示例1:判断奇偶数

IDEA中,代码有时会显示黄色的背景,这代表警告。
表示该区域的代码永远为 false,
代码中有个别警告没有关系。

Java-逻辑控制语句,JavaSE,java,开发语言,idea

public static void main (String[]args){
        int a = 10;
        if (a % 2 != 0) {//黄色背景说明是警告(代码中有个别警告没有关系),表示永远为false。
            System.out.println("奇数!");
        } else {
            System.out.println("偶数!");
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

  1. 语法格式3:if-else if-else语句(多重条件)
if (condition1) {
    // 如果条件1成立,执行的代码块
} else if (condition2) {
    // 如果条件2成立,执行的代码块
} else {
    // 上述条件均不成立时,执行的代码块
}

if-else if-else语句用于处理多个条件情况,可以根据不同的条件执行相应的代码块。条件会按顺序依次判断,当某个条件成立时,执行对应的代码块。如果所有条件都不成立,则执行最后的 else 代码块。

代码示例2:使用if语句来检查一个数值变量的正负性

 public static void main(String[] args) {
        int num = -1;

        if (num > 0) { // 检查num是否大于0
            System.out.println(num + "是正数。");
        } else if (num < 0) { // 如果num小于0
            System.out.println(num + "是负数。");
        } else { // 如果num等于0
            System.out.println(num + "不是正数也不是负数。");
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

  1. 语法格式4:嵌套 if 语句
if (condition1) {
    // 外层if代码块
    if (condition2) {
        // 内层if代码块
    }
}

在Java中,if语句可以嵌套使用。内层if语句的条件判断是在外层if语句的条件判断为true的情况下才会执行。可以根据实际需要嵌套多个if语句。

代码示例3:判断是否为偶数

public static void main(String[] args) {
        int num = 8;

        if (num % 2 == 0) { // 如果num可以被2整除
            if (num > 0) { // 如果num大于0
                System.out.println(num + "是正偶数。");
            } else if (num < 0) { // 如果num小于0
                System.out.println(num + "是负偶数。");
            } else { // 如果num等于0
                System.out.println(num + "是偶数。");
            }
        } else { // 如果num不能被2整除
            System.out.println(num + "不是偶数。");
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

[注意事项]

  • 分号问题
 public static void main(String[] args) {
        int num = 1;
        if (num == 2);
        {
            System.out.println("Hello");
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

  • 这里的 if 语句,多写了一个 分号,导致分号成为了 if 语句的语句体, 而 { } 中的代码已经成为了和一个 if 无关的代码块。

2.2 switch 语句

switch语句由一个表达式和多个case分支组成。

语法格式

switch (表达式) {
    case1:
        // 当表达式的值等于值1时执行的代码
        break;
    case2:
        // 当表达式的值等于值2时执行的代码
        break;
    case3:
        // 当表达式的值等于值3时执行的代码
        break;
    // 可以有更多的case分支
    default:
        // 当表达式的值不匹配任何case时执行的代码
}

//switch语句后面的代码

在switch语句中,break语句的作用是结束当前的case条件分支,并跳出switch语句,使程序执行流程继续到switch语句后面的代码。

流程

  1. 先计算表达式的值
  2. 和case依次比较,一旦有响应的匹配就执行该项下的语句,直到遇到break时结束
  3. 当表达式的值没有与所列项匹配时,执行default

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

public static void main(String[] args) {

        int day = 8;
        
        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("无效的输入");
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

注意事项

  1. break和default都不能省略
  2. 不能有两个相同的case常量值
  3. switch的括号内只能是如下类型的表达式:
    基本类型:byte、char、short、int,注意不能是long类型
    引用类型:String常量串、枚举类型 (不能做switch的参数的数据类型: long double float boolean)

三、循环结构

3.1 while 循环

while循环是Java中的一种基本的循环结构,它的作用是在满足条件的情况下反复执行一段代码块。

语法格式

while (条件) {
    // 循环体
}

其中条件是一个布尔表达式,表示循环的条件。
如果条件为,则执行循环体,然后再次检查条件是否为真;
如果条件为,则终止循环,跳出while语句。

代码示例1:输出1-10之间的所有整数

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

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

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

public static void main (String[]args){
        int sum = 0; // 初始化和为0
        int i = 1;   // 循环变量起始值为1

        while (i <= 100) {
            sum += i; // 将当前数加到sum中,相当于 sum = sum + i
            i++;      // 循环变量自增
        }

        System.out.println("1到100的和为:" + sum);
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

代码示例3: 计算 4 的阶乘

 public static void main (String[]args){
        int i = 1;
        int ret = 1;
        while (i <= 4) {
            ret *= i;
            i++;
        }
        System.out.println(ret);
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

注意事项

  • while()后面不能加分号(;)
public static void main(String[] args) {
        int num = 1;
        while (num <= 10); {
            System.out.println(num);
            num++;
        }
    }

如果加上分号,代码会一直处于运行状态,但无任何输出结果。
while 是一个空语句,实际的 { } 部分和循环无关。
此时循环条件 num <= 10 恒成立, 导致代码死循环,代码会一直运行而不会运行{}中的内容。

3.2 break

break语句在Java中用于提前结束循环。

代码示例:找到 50 -100 中第一个 6 的倍数

public static void main(String[] args) {
        int num = 50;
        while (num <= 100) {
            if (num % 6 == 0) {
                System.out.println("找到 6 的倍数:" + num);
                break;//执行到break语句,结束循环。
            }
            num++;
        }
    }

输出结果

找到 6 的倍数:54

3.3 continue

在Java中,continue语句用于跳过当前循环中剩余的代码,直接开始下一次循环。

代码示例

 public static void main(String[] args) {
        int a = 1;
        while (a <= 6) {
            if (a == 2) {
                a++;   //这里也记得a++ 否则会死循环
                continue;//结束下面的循环 执行下一次循环
            }
            System.out.println(a);
            a++;
        }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

3.4 for 循环

语法格式

for (1.初始化;2.判断条件;4.更新操作) {
     3.循环体
}
  • 1.初始化:在循环开始之前执行,用于声明和初始化循环变量初始值,只执行一次。

  • 2.判断条件:在每次迭代之前进行判断,如果条件成立,则继续执行循环体,否则跳出循环。

  • 3.循环体:循环体中包含要执行的代码块或语句,它们将被循环执行。

  • 4.更新操作:在每次迭代之后执行,用于更新循环变量的值。

执行过程
1234—>234—>234—>234—>234—>234—>…—>2为false,循环结束。
除却1只执行一次以外,其余在2为true时都执行多次。

代码示例1:输出1-10之间的所有整数

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

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

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

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

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

代码示例3: 计算 4 的阶乘

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

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

注意事项

  • 如果for语句中什么都不写,就会进入死循环。
public static void main(String[] args) {
        int sum = 0;
        for (; ; ) {//死循环
            System.out.println("sum = "+ sum);
        }
    }

效果图:这里就会一直运行,不会停止。
Java-逻辑控制语句,JavaSE,java,开发语言,idea

3.5 do while 循环

先执行循环语句, 再判定循环条件,如果循环条件为真,则继续执行循环体,否则结束循环。

语法格式

do {
    // 循环体
} while (循环条件);//这里的分号一定要

代码示例:打印 0 - 5

public static void main(String[] args) {
        int i = 0;//先行后判
        do {
            System.out.println(i);
            i++;
        } while (i <= 5);
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

注意: do while 循环最后的分号一定要写。

四、输入输出

4.1 输出到控制台

代码示例

public static void main(String[] args) {
        System.out.println("输出且换行");
        System.out.print("输出且不换行 ");
        System.out.printf("%s\n", "格式化输出,和C语言一样。");//%s表示以字符串类型输出
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea
从图中可见,第一行代码自动换行了;而第二行代码没有换行,导致第三行代码与第二行代码处于同一行。

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

4.2 从键盘上输入

在Java中,从键盘上输入可以使用Scanner类来实现。

代码示例

import java.util.Scanner; // 需要导入 util 包  
                          这只写一次,下面的代码默认都导入了包
                          一般情况下IEDA都会自动为我们导入包
                          如果没有导入,需要手动输入代码导入

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

        // 创建 Scanner 对象
        Scanner scanner = new Scanner(System.in);

        // 读取字符串
        System.out.print("请输入一个字符串:");
        String str = scanner.nextLine();//读取用户输入的字符串
        System.out.println("你输入的字符串是:" + str);

        // 读取整数
        System.out.print("请输入一个整数:");
        int num = scanner.nextInt();//读取用户输入的整数
        System.out.println("你输入的整数是:" + num);

        // 关闭 Scanner 对象
        scanner.close();
    }
    }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

在上面的代码中,我们首先创建了一个 Scanner 对象并传入 System.in 来获取用户从键盘中输入的值。
然后使用 nextLine() 方法读取字符串。使用 nextInt() 方法读取整数。最后,用 .close() 关闭 Scanner 对象以释放资源。

4.2.1 next() 和 nextLine()

在 Java 中,Scanner 类提供了两种方法:next() 和 nextLine() 用于读取用户输入的字符串。

  • next() 方法:读取输入的一个单词,当遇到空格时,next() 方法会停止读取输入。
  • nextLine()方法:读取整行输入,直到遇到换行符为止。

代码示例1

        Scanner scanner = new Scanner(System.in);

        System.out.println("请输入姓名:");
        String name = scanner.next();//next遇到空格就结束了,与nextLine()不同
        System.out.println(name);

        String name2 = scanner.next();//读取了空格后的字符串
        System.out.println(name2);

效果图:
Java-逻辑控制语句,JavaSE,java,开发语言,idea
第二个输入代码读取了空格后面的李四,第一个读取代码被张三后面的空格结束了。

代码示例2

 Scanner scanner = new Scanner(System.in);

        System.out.println("请输入年龄:");
        int age = scanner.nextInt();
        System.out.println(age);

        System.out.println("请输入姓名:");

        //此时,上面输完之后输入的 回车 会被下面读取到
        //就导致下面的nextLine()无法输入
        String name = scanner.nextLine();
        System.out.println(name);

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

解决方法
在第一个输入后面加一行 scanner.nextLine(); 接收一个回车键,这样下面的输入就不会接收到回车键了。

Scanner scanner = new Scanner(System.in);

        System.out.println("请输入年龄:");
        int age = scanner.nextInt();
        System.out.println(age);

        scanner.nextLine();  //接收一个回车键

        System.out.println("请输入姓名:");

        //此时,上面输完之后输入的 回车 会被下面读取到
        //就导致下面的nextLine()无法输入
        String name = scanner.nextLine();
        System.out.println(name);

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

4.2.2 hasNextInt()

代码示例

 Scanner scanner = new Scanner(System.in);

        System.out.println("请输入一个整数:");
        while (scanner.hasNextInt()) {//表示是否有下一个数,有输入就执行
            System.out.println("请输入一个整数:");
            int n = scanner.nextInt();
            System.out.println("n = " + n);  //ctrl+D 结束循环
        }

效果图
Java-逻辑控制语句,JavaSE,java,开发语言,idea

从代码中不难看出hasNextInt()是一个返回值为布尔类型的方法。
这个时候为了证明我们的猜想,可以按住键盘上左下角 ctrl + 单击,可以查看源代码。

Java-逻辑控制语句,JavaSE,java,开发语言,idea
源代码界面
Java-逻辑控制语句,JavaSE,java,开发语言,idea
在学习过程中我们也需要看得懂部分源代码,方便我们更好的理解和学习java。

小提示:

在IDEA中,如果代码数量过多,想要查看前面的代码,来写后面的代码时。
一直滚动鼠标会很费时间,不方便。
这时候就可以利用到一个开多窗口的功能,实现下面的效果:
Java-逻辑控制语句,JavaSE,java,开发语言,idea

实现方法

  1. 右键点击我们自己的.java文件。
  2. 单击Split Right

这里以我的Test .java为例

Java-逻辑控制语句,JavaSE,java,开发语言,idea
当然,开2个以上的窗口也是相同的操作方法。文章来源地址https://www.toymoban.com/news/detail-744864.html

到了这里,关于Java-逻辑控制语句的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 【JavaSE专栏14】Java 的 while 循环语句

    作者主页 :Designer 小郑 作者简介 :Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue、SpringBoot和微信小程序)、系统定制、远程技术指导。CSDN学院、蓝桥云课认证讲师,全栈领域优质创作者。热爱技术、专注业务、开放合作、乐

    2024年02月16日
    浏览(43)
  • 【JavaSE专栏12】Java 的 switch 条件语句

    作者主页 :Designer 小郑 作者简介 :Java全栈软件工程师一枚,来自浙江宁波,负责开发管理公司OA项目,专注软件前后端开发(Vue、SpringBoot和微信小程序)、系统定制、远程技术指导。CSDN学院、蓝桥云课认证讲师,全栈领域优质创作者。热爱技术、专注业务、开放合作、乐

    2024年02月16日
    浏览(42)
  • 【javaSE】 程序逻辑控制练习代码

    目录   练习1 练习2 练习3 练习4 练习5 练习6 练习7 练习8 练习9 总结   根据年龄, 来打印出当前年龄的人是少年(低于18), 青年(19-28), 中年(29-55), 老年(56以上) 判定一个数字是否是素数 打印 1 - 100 之间所有的素数 输出 1000 - 2000 之间所有的闰年 输出乘法口诀表 求两个正整数的最

    2024年02月16日
    浏览(41)
  • 【JAVA】java中的逻辑控制

     作者主页:paper jie的博客 本文作者:大家好,我是paper jie,感谢你阅读本文,欢迎一建三连哦。 本文录入于《JAVASE语法系列》专栏,本专栏是针对于大学生,编程小白精心打造的。笔者用重金(时间和精力)打造,将javaSE基础知识一网打尽,希望可以帮到读者们哦。 其他专栏

    2024年02月15日
    浏览(39)
  • Java的程序逻辑控制

    导读: 本篇是JAVA基础系列,主要总结了程序的逻辑结构,也就是顺序结构、分支结构和循环结构。这三种结构在日常代码编写过程中是离不开的。而一个程序猿是否是老手,从逻辑结构的运用上就可以直观的看出来。 Java的基本结构就是顺序结构,除非特别指明,否则就安装

    2024年03月23日
    浏览(46)
  • Java逻辑控制

    逻辑控制 【本节目标】 Java中程序的逻辑控制语句 Java中的输出输入方式 完成猜数字游戏 1.概述 我的曾经 : 早上8:00起床---洗漱---吃早饭---上课---吃午饭---上课---运动---吃完饭---玩手机---睡觉 每天的生活貌似都是这么规律,顺序的做着每件事,前途一片渺茫~~~ 直到有一天

    2024年04月26日
    浏览(33)
  • Java-逻辑控制

    目录 一、顺序结构 二、分支结构         1.if语句           2.swich语句 三、循环结构         1.while循环         2.break         3.continue         4.for循环         5.do while循环 四、输入输出         1.输出到控制台         2.从键盘输入         按照代码的书写

    2024年02月15日
    浏览(53)
  • 【Java基础篇】逻辑控制

    作者简介: 辭七七,目前大一,正在学习C/C++,Java,Python等 作者主页: 七七的个人主页 文章收录专栏 :Java.SE,本专栏主要讲解运算符,程序逻辑控制,方法的使用,数组的使用,类和对象,继承和多态,抽象类和接口等内容 欢迎大家点赞 👍 收藏 ⭐ 加关注哦!💖💖 顺

    2024年02月06日
    浏览(39)
  • Java入门篇 之 逻辑控制

    博主的文章希望对大家有所帮助 今日份励志文案: 凌空虚度,难成千秋伟业;求真务实,方能善作善成 冲冲冲!!!!! 目录 一.if~else语句  1.1.if-else语句基本用法: 1.2.代码演示  二.switch~case语句  2.1 switch~case语句基本用法: 2.2.代码演示 ​编辑三.while语句 3.1while语句基本

    2024年02月07日
    浏览(37)
  • Java 流程控制 Switch 语句

    一、什么是Switch语句? Switch语句是Java中的一种流程控制语句,用于根据表达式的值选择不同的执行路径。Switch语句通常用于多个条件的判断,比如根据用户输入的不同选项执行不同的操作。 二、语法说明 Switch语句的基本语法如下: Switch语句包含一个表达式和多个case语句块

    2024年02月09日
    浏览(49)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包