• 滚雪球学Java(09-6):Java中的条件运算符,你真的掌握了吗?


    在这里插入图片描述

      咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好习惯,别被干货淹没了哦~


    🏆本文收录于「滚雪球学Java」专栏,专业攻坚指数级提升,助你一臂之力,带你早日登顶🚀,欢迎大家关注&&收藏!持续更新中,up!up!up!!

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

    前言

      Java作为一种安全高效性能强大的语言,深受广大开发者的喜爱。但是对于初学者来说,有时候会觉得Java的语法复杂。因此,在学习Java的过程中,我们需要掌握一些基础的知识,这样才能更好的理解和运用Java。本文将介绍Java中的条件运算符,希望能帮助到初学者更好地理解和应用条件运算符。

    摘要

      条件运算符,也称为三目运算符,是Java中的一种特殊的运算符。它与if-else语句类似,用于根据条件的真假来执行不同的操作。条件运算符由三个操作数组成,语法格式为:

    (条件) ? 表达式1 : 表达式2
    
    • 1

      如果条件为真,则执行表达式1;如果条件为假,则执行表达式2。

    Java-条件运算符

    简介

      条件运算符是一种非常简洁的语法结构,它可以用来代替if-else语句。使用条件运算符的好处是,可以让代码更加简洁和清晰,减少代码的复杂度和冗余性。

      条件运算符可以嵌套使用,这样可以实现更复杂的判断。但是,我们需要注意,过多的嵌套会让代码难以阅读和维护,因此在使用条件运算符时,需要注意适当的使用嵌套。

    源代码解析

    现在让我们来看一下条件运算符的源代码解析。

    public class ConditionOperator {
        public static void main(String[] args) {
            int a = 10;
            String result = (a > 5) ? "a大于5" : "a小于等于5";
            System.out.println(result);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

      上面的代码中,我们定义了一个整型变量a,并将其赋值为10。然后我们使用了条件运算符,判断a是否大于5,如果是,则返回字符串"a大于5",否则返回字符串"a小于等于5"。最后我们将结果输出到控制台上。

    运行上述代码,输出结果为:

    a大于5
    
    • 1

      从上面的代码中,我们可以看出,使用条件运算符可以使代码更加简洁,而且可以让我们更加专注于代码的逻辑实现。

    应用场景案例

      现在我们来看一些应用场景案例,这些场景都可以使用条件运算符来实现。

    计算两个数的最大值

    public class MaxNumber {
        public static void main(String[] args) {
            int a = 10;
            int b = 20;
            int max = (a > b) ? a : b;
            System.out.println("Max=" + max);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8

    判断一个数是否为偶数

    public class IsEvenNumber {
        public static void main(String[] args) {
            int a = 10;
            String result = (a % 2 == 0) ? "偶数" : "奇数";
            System.out.println(result);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    判断一个数是否为正数、负数或者零

    public class CheckNumber {
        public static void main(String[] args) {
            int a = 10;
            String result = (a > 0) ? "正数" : (a < 0 ? "负数" : "零");
            System.out.println(result);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    判断一个字符串是否为空

    public class IsNullOrEmpty {
        public static void main(String[] args) {
            String str = "Hello World";
            String result = (str != null && !str.equals("")) ? "不为空" : "为空";
            System.out.println(result);
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7

    优缺点分析

    使用条件运算符的优点是:

    • 简洁:使用条件运算符可以让代码更加简洁,减少代码的冗余性。
    • 可读性:条件运算符的结构简单,容易理解和阅读。
    • 易于维护:简洁的代码结构通常也意味着代码的易于维护。

    但是,在使用条件运算符时,也需要注意一些缺点:

    • 可读性差:如果嵌套过多的条件运算符,那么代码的可读性会变得很差。
    • 可扩展性差:使用条件运算符的代码结构通常比if-else语句结构更加紧凑,这就意味着这种代码结构的可扩展性会变得比较差。

    类代码方法介绍

      现在我们来看一下Java中的条件运算符的一些常用方法介绍。

    1. 判断两个数的大小

    public static int max(int a, int b) {
        return (a > b) ? a : b;
    }
    
    • 1
    • 2
    • 3

    2. 判断一个数是否为偶数

    public static boolean isEven(int a) {
        return (a % 2 == 0) ? true : false;
    }
    
    • 1
    • 2
    • 3

    3. 判断一个数是否在指定范围内

    public static int checkRange(int x, int min, int max) {
        return (x >= min && x <= max) ? x : -1;
    }
    
    • 1
    • 2
    • 3

    4. 判断一个字符串是否为空

    public static boolean isNullOrEmpty(String str) {
        return (str != null && !str.equals("")) ? false : true;
    }
    
    • 1
    • 2
    • 3

    测试用例

    我们可以编写以下测试用例来测试上面的类代码中的方法。

    测试代码演示

    package com.demo.javase.day09;
    
    /**
     * Java之条件运算符案例演示
     *
     * @Author bug菌
     * @Date 2023-11-08 23:11
     */
    public class ConditionOperatorTest {
    
    
        public static int max(int a, int b) {
            return (a > b) ? a : b;
        }
    
        public static boolean isEven(int a) {
            return (a % 2 == 0) ? true : false;
        }
    
        public static int checkRange(int x, int min, int max) {
            return (x >= min && x <= max) ? x : -1;
        }
    
        public static boolean isNullOrEmpty(String str) {
            return (str != null && !str.equals("")) ? false : true;
        }
    
        public static void main(String[] args) {
            // 测试1:判断两个数的大小
            System.out.println("Max=" + ConditionOperatorTest.max(10, 20));
    
            // 测试2:判断一个数是否为偶数
            System.out.println("10是偶数吗?" + ConditionOperatorTest.isEven(10));
    
            // 测试3:判断一个数是否在指定范围内
            System.out.println("20在10-30的范围内吗?" + ConditionOperatorTest.checkRange(20, 10, 30));
    
            // 测试4:判断一个字符串是否为空
            System.out.println("\"Hello World\"是否为空字符串?" + ConditionOperatorTest.isNullOrEmpty("Hello World"));
        }
    }
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29
    • 30
    • 31
    • 32
    • 33
    • 34
    • 35
    • 36
    • 37
    • 38
    • 39
    • 40
    • 41

    测试结果

      根据如上测试用例,本地测试结果如下,仅供参考,你们也可以自行修改测试用例或者添加更多的测试数据或测试方法,进行熟练学习以此加深理解。

    在这里插入图片描述

    测试代码分析

      根据如上测试用例,在此我给大家进行深入详细的解读一下测试代码,以便于更多的同学能够理解并加深印象。
      如上测试用例代码定义了一个类ConditionOperatorTest,包含了四个静态方法:maxisEvencheckRangeisNullOrEmpty

      max方法用于比较两个数的大小,通过条件运算符进行判断,如果a>b,则返回a,否则返回b

      isEven方法用于判断一个数是否为偶数,通过条件运算符进行判断,如果a%2==0,则返回true,否则返回false

      checkRange方法用于判断一个数字是否在指定的范围内,通过条件运算符进行判断,如果xminmax之间,则返回x,否则返回-1

      isNullOrEmpty方法用于判断一个字符串是否为空,通过条件运算符进行判断,如果str不为null并且不为空字符串,则返回false,否则返回true

      在main方法中,分别调用了这四个方法并输出结果。

    全文小结

      通过本文的介绍,我们了解了Java中的条件运算符,学会了如何使用条件运算符进行条件判断。此外,我们还介绍了一些应用场景案例和常用方法,以及条件运算符的优缺点分析。希望本文能帮助大家更好地理解和应用条件运算符,从而提高Java编程的效率和质量。

    总结

      Java是一门非常强大的编程语言,学会Java可以为我们的编程生涯打下坚实的基础。本文介绍了Java中的条件运算符,通过学习条件运算符的基本语法和应用场景,我们能够更好地理解和掌握Java的这一特殊运算符。希望大家在学习Java的过程中能够不断积累经验和知识,开发出更加高效和优秀的程序。

      …

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

    附录源码

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

    ☀️建议/推荐你


      无论你是计算机专业的学生,还是对编程有兴趣的小伙伴,都建议直接毫无顾忌的学习此专栏「滚雪球学Java」,bug菌郑重承诺,凡是学习此专栏的同学,均能获取到所需的知识和技能,全网最快速入门Java编程,就像滚雪球一样,越滚越大,指数级提升。

      最后,如果这篇文章对你有所帮助,帮忙给作者来个一键三连,关注、点赞、收藏,您的支持就是我坚持写作最大的动力。

      同时欢迎大家关注公众号:「猿圈奇妙屋」 ,以便学习更多同类型的技术文章,免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板、技术文章Markdown文档等海量资料。

    📣关于我

      我是bug菌,CSDN | 掘金 | infoQ | 51CTO 等社区博客专家,历届博客之星Top30,掘金年度人气作者Top40,51CTO年度博主Top12,华为云 | 阿里云| 腾讯云等社区优质创作者,全网粉丝合计15w+ ;硬核微信公众号「猿圈奇妙屋」,欢迎你的加入!免费白嫖最新BAT互联网公司面试题、4000G pdf电子书籍、简历模板等海量资料。


  • 相关阅读:
    VEX —— Functions|Nodes
    网工内推 | 应届、大专可投,IE认证优先,有年终奖、带薪年假
    内存管理
    Knife4j使用教程(三) -- 实体类的配置注解(@ApiModel与@ApiModelProperty 的 认识与使用)
    【分布式】大模型分布式训练入门与实践 - 04
    flutter监听键盘输入做出反应
    开发工具vim
    vue3实现数据大屏内数据向上滚动,鼠标进入停止滚动 vue3+Vue3SeamlessScroll
    面向对象的分析与设计(精品课程)第二章作业
    【广州华锐互动】VR技术助力中小学生安全教育,让学生在虚拟世界中学会自我保护!
  • 原文地址:https://blog.csdn.net/weixin_43970743/article/details/134300657