滚雪球学Java(12):JavaSE-if条件语句入门指南:掌握代码分支流程!

简介: 【4月更文挑战第1天】🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

在这里插入图片描述


🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,希望能够助你一臂之力,帮你早日登顶实现财富自由🚀;同时,欢迎大家关注&&收藏&&订阅!持续更新中,up!up!up!!

环境说明:Windows 10 + IntelliJ IDEA 2021.3.2 + Jdk 1.8

@[toc]

前言

Java是一种面向对象的编程语言,常用于开发Web应用、桌面应用、移动应用等。条件语句是Java中的一种常见的控制结构,用于根据条件来执行不同的代码块。

摘要

本文将介绍Java中的条件语句,包括if语句、if-else语句、if-else-if语句和switch语句。我们将通过简单易懂的例子来解释这些语句的用法,同时也会介绍一些注意事项和最佳实践。

内容

if语句

if语句是最基本的条件语句,在Java中的语法如下:

if (condition) {
   
    // 如果条件为真,则执行这里的代码
}

其中,condition是一个可以求值为布尔类型的表达式。如果这个表达式的值为true,那么if语句后面的代码块会被执行;否则,这个代码块会被跳过。

让我们来看一个例子。假设我们要判断一个数字是否大于10,如果是,就输出一条信息:

int num = 15;
if (num > 10) {
   
    System.out.println("这个数字大于10。");
}

上面的代码会输出一条信息,因为num的值为15,大于10。

需要注意的是,if语句后面的代码块只有一条语句时,可以省略花括号。但是,为了代码的可读性,建议始终使用花括号,即使只有一条语句。

if-else语句

if-else语句允许我们在条件不成立时执行另外一段代码。它的语法如下:

if (condition) {
   
    // 如果条件为真,则执行这里的代码
} else {
   
    // 如果条件为假,则执行这里的代码
}

如果condition的值为true,那么第一个代码块会被执行;否则,第二个代码块会被执行。

让我们来看一个例子。假设我们要判断一个数字是否为偶数,如果是,输出一条信息;否则,输出另一条信息:

int num = 7;
if (num % 2 == 0) {
   
    System.out.println("这个数字是偶数。");
} else {
   
    System.out.println("这个数字是奇数。");
}

上面的代码会输出一条信息,因为7是一个奇数。

if-else-if语句

if-else-if语句允许我们根据多个条件来执行不同的代码块。它的语法如下:

if (condition1) {
   
    // 如果条件1为真,则执行这里的代码
} else if (condition2) {
   
    // 如果条件2为真,则执行这里的代码
} else {
   
    // 如果所有条件都不成立,则执行这里的代码
}

如果condition1的值为true,那么第一个代码块会被执行;否则,程序会继续判断condition2的值,如果为true,则执行第二个代码块;如果所有条件都不成立,则执行最后一个代码块。

让我们来看一个例子。假设我们要判断一个数字是正数、负数还是零,分别输出不同的信息:

int num = -2;
if (num > 0) {
   
    System.out.println("这个数字是正数。");
} else if (num < 0) {
   
    System.out.println("这个数字是负数。");
} else {
   
    System.out.println("这个数字是零。");
}

上面的代码会输出一条信息,因为num的值为-2,是一个负数。

switch语句

switch语句也可以根据多个条件来执行不同的代码块。它的语法如下:

switch (expression) {
   
    case value1:
        // 如果expression的值等于value1,则执行这里的代码
        break;
    case value2:
        // 如果expression的值等于value2,则执行这里的代码
        break;
    // ...
    default:
        // 如果expression的值都不等于上述任何一个值,则执行这里的代码
        break;
}

其中,expression是一个可以求值为整型、字符型或枚举类型的表达式。程序会根据expression的值来匹配不同的case语句,并执行对应的代码块。如果没有匹配的case语句,则执行default代码块(可选)。

让我们来看一个例子。假设我们要根据数字的值来输出不同的信息:

int num = 3;
switch (num) {
   
    case 1:
        System.out.println("这是第一个数字。");
        break;
    case 2:
        System.out.println("这是第二个数字。");
        break;
    case 3:
        System.out.println("这是第三个数字。");
        break;
    default:
        System.out.println("这不是一个有效的数字。");
        break;
}

上面的代码会输出一条信息,因为num的值为3,匹配到了第三个case语句。

注意事项和最佳实践

  • 在if语句中,尽量使用简单的条件表达式,避免复杂的逻辑运算。
  • 在if-else语句中,else代码块总是在if代码块后面,建议将else代码块放在if代码块的下一行。
  • 注意if-else-if语句中各个条件的顺序,将最常见的情况放在前面,可以提高代码的效率。
  • 在switch语句中,要记得每个case语句都要有一个break语句,避免出现不必要的执行。

代码方法介绍

检查数字是否为偶数

public static boolean isEven(int num) {
   
    return num % 2 == 0;
}

这个方法用于检查一个数字是否为偶数。它接受一个整型参数,如果这个参数是偶数则返回true,否则返回false。

判断数字的正负性

public static String checkSign(int num) {
   
    if (num > 0) {
   
        return "这个数字是正数。";
    } else if (num < 0) {
   
        return "这个数字是负数。";
    } else {
   
        return "这个数字是零。";
    }
}

这个方法用于判断一个数字的正负性。它接受一个整型参数,根据这个参数的值返回不同的信息。

输出数字对应的信息

public static String getNumInfo(int num) {
   
    switch (num) {
   
        case 1:
            return "这是第一个数字。";
        case 2:
            return "这是第二个数字。";
        case 3:
            return "这是第三个数字。";
        default:
            return "这不是一个有效的数字。";
    }
}

这个方法用于根据一个数字的值输出对应的信息。它接受一个整型参数,根据这个参数的值返回不同的信息。

测试用例

测试isEven方法

@Test
void testIsEven() {
   
    assertTrue(isEven(4));
    assertFalse(isEven(5));
}

这个测试用例用于测试isEven方法的正确性。它通过断言来判断方法返回值是否符合预期。

测试checkSign方法

@Test
void testCheckSign() {
   
    assertEquals("这个数字是正数。", checkSign(5));
    assertEquals("这个数字是负数。", checkSign(-7));
    assertEquals("这个数字是零。", checkSign(0));
}

这个测试用例用于测试checkSign方法的正确性。它通过断言来判断方法返回值是否符合预期。

剩下的就同学们自己测试玩玩啦。

总结

Java中的if语句是一种条件分支语句,它用于根据给定的条件来执行不同的代码块。if语句的基本结构如下:

if (condition) {
    // 如果条件为真,则执行此代码块
} else {
    // 如果条件为假,则执行此代码块(可选)
}

以下是if语句的一些常见用法和注意事项:

  1. 可以使用比较运算符(如 ==、!=、>、<、>=、<=)和逻辑运算符(如 &&、||)来组合条件。
  2. 可以嵌套多个if语句来处理更复杂的条件。
  3. 如果else语句块没有被包含在if语句中,则它会被视为与最近的if语句配对。
  4. 如果条件为布尔值,则不需要使用 "== true" 或 "== false" 进行比较,而是直接使用布尔值本身即可。
  5. 如果只有一条语句需要执行,可以使用单行if语句来写,如:if (condition) statement;
  6. Java还提供了switch语句来处理多个条件的情况,可以比if语句更加简洁和可读。

以上是if语句的一些常用用法和注意事项。在实际编程中,if语句经常被用来处理不同的条件分支,如判断用户输入是否合法、处理异常情况、实现不同逻辑分支等。

  ... ...

  好啦,这期的内容就基本接近尾声啦,若你想学习更多,你可以看看专栏的导读篇《「滚雪球学Java」教程导航帖》,本专栏致力打造最硬核 Java 零基础系列学习内容,🚀打造全网精品硬核专栏,带你直线超车;欢迎大家订阅持续学习。功不唐捐,久久为功!

「赠人玫瑰,手留余香」,咱们下期拜拜~~

附录源码

  如上涉及所有源码均已上传同步在「Gitee」,提供给同学们一对一参考学习,辅助你更迅速的掌握。

☀️建议/推荐你

  无论你是计算机专业的学生,还是对编程感兴趣的跨专业小白,都建议直接入手「滚雪球学Java」专栏;该专栏不仅免费,bug菌还郑重承诺,只要你学习此专栏,均能入门并理解Java SE,以全网最快速掌握Java语言,每章节源码均同步「Gitee」,你真值得拥有;学习就像滚雪球一样,越滚越大,带你指数级提升。

  码字不易,如果这篇文章对你有所帮助,帮忙给bugj菌来个一键三连(关注、点赞、收藏) ,您的支持就是我坚持写作分享知识点传播技术的最大动力。

  同时也推荐大家关注我的硬核公众号:「猿圈奇妙屋」 ;以第一手学习bug菌的首发干货,不仅能学习更多技术硬货,还可白嫖最新BAT大厂面试真题、4000G Pdf技术书籍、万份简历/PPT模板、技术文章Markdown文档等海量资料,你想要的我都有!

目录
相关文章
|
13天前
|
安全 Java 编译器
深入理解Java中synchronized三种使用方式:助您写出线程安全的代码
`synchronized` 是 Java 中的关键字,用于实现线程同步,确保多个线程互斥访问共享资源。它通过内置的监视器锁机制,防止多个线程同时执行被 `synchronized` 修饰的方法或代码块。`synchronized` 可以修饰非静态方法、静态方法和代码块,分别锁定实例对象、类对象或指定的对象。其底层原理基于 JVM 的指令和对象的监视器,JDK 1.6 后引入了偏向锁、轻量级锁等优化措施,提高了性能。
35 3
|
20天前
|
前端开发 Java 测试技术
java日常开发中如何写出优雅的好维护的代码
代码可读性太差,实际是给团队后续开发中埋坑,优化在平时,没有那个团队会说我专门给你一个月来优化之前的代码,所以在日常开发中就要多注意可读性问题,不要写出几天之后自己都看不懂的代码。
56 2
|
1月前
|
Java 编译器 数据库
Java 中的注解(Annotations):代码中的 “元数据” 魔法
Java注解是代码中的“元数据”标签,不直接参与业务逻辑,但在编译或运行时提供重要信息。本文介绍了注解的基础语法、内置注解的应用场景,以及如何自定义注解和结合AOP技术实现方法执行日志记录,展示了注解在提升代码质量、简化开发流程和增强程序功能方面的强大作用。
81 5
|
1月前
|
存储 算法 Java
Java 内存管理与优化:掌控堆与栈,雕琢高效代码
Java内存管理与优化是提升程序性能的关键。掌握堆与栈的运作机制,学习如何有效管理内存资源,雕琢出更加高效的代码,是每个Java开发者必备的技能。
57 5
|
1月前
|
安全 Java API
Java中的Lambda表达式:简化代码的现代魔法
在Java 8的发布中,Lambda表达式的引入无疑是一场编程范式的革命。它不仅让代码变得更加简洁,还使得函数式编程在Java中成为可能。本文将深入探讨Lambda表达式如何改变我们编写和维护Java代码的方式,以及它是如何提升我们编码效率的。
|
8月前
|
Java
使用Java代码打印log日志
使用Java代码打印log日志
330 1
|
Java BI API
在Java代码中打日志需要注意什么?
日志是什么?日志是你在代码运行时打印出来的一些数据和记录,是快速排查问题的好帮手,是撕逼和甩锅的利器!
716 0
|
缓存 Java 网络架构
别在 Java 代码里乱打日志了,这才是正确的打日志姿势!
别在 Java 代码里乱打日志了,这才是正确的打日志姿势!
172 0
|
Java BI Apache
在Java代码中打日志需要注意什么?
云栖号资讯:【点击查看更多行业资讯】在这里您可以找到不同行业的第一手的上云资讯,还在等什么,快来! 为什么要打日志? 日志是什么?日志是你在代码运行时打印出来的一些数据和记录,是快速排查问题的好帮手! 做一件事情之前,先思考为什么。
在Java代码中打日志需要注意什么?
|
缓存 架构师 搜索推荐
别在 Java 代码里乱打日志了,这才是正确的日志打印姿势!
使用门面模式的日志框架,有利于维护和各个类的日志处理方式统一。