滚雪球学Java(09-2):Java中的关系运算符,你真的掌握了吗?

在这里插入图片描述

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


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

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

文章目录

    • 前言
    • 摘要
  • Java-关系运算符
    • 简介
    • 案例演示
      • 测试代码演示
      • 测试结果
      • 测试代码分析
    • 应用场景案例
    • 优缺点分析
      • 优点
      • 缺点
    • 类代码方法介绍
    • 测试用例
    • 全文小结
  • 总结
    • 附录源码
  • ☀️建议/推荐你
  • 📣关于我

前言

  Java作为一种面向对象的高级编程语言,广泛应用于各种领域,尤其是Web开发。具备Java语言开发基础是学习和掌握Java编程的先决条件。而在Java编程中,关系运算符是一个基础而重要的概念,是在程序中进行各种比较运算的基础。本文将从Java关系运算符的定义、符号、应用场景等方面进行详细介绍。

摘要

  本文主要介绍了Java中的关系运算符,包括定义、符号、应用场景以及优缺点分析。利用源代码解析和测试用例,展现了Java关系运算符的具体应用,为Java初学者提供了重要的编程指导。

Java-关系运算符

简介

  关系运算符是Java编程语言中的基本运算符之一,通常用于比较两个值之间的大小、相等性等关系,并以布尔类型的结果返回比较运算结果的真假值。Java中常见的关系运算符有以下几种:

  • “==”:判断两个值是否相等
  • “!=”:判断两个值是否不相等
  • “>”:判断一个值是否大于另一个值
  • “>=”:判断一个值是否大于或等于另一个值
  • “<”:判断一个值是否小于另一个值
  • “<=”:判断一个值是否小于或等于另一个值

以下是Java关系运算符的特点:

  • 关系运算符可以用于任何基本数据类型的比较。
  • 关系运算符结果返回的是布尔类型的值,即true或false。
  • 对于字符串类型的比较,Java中的关系运算符实际上比较的是字符串的ASCII码值,因此一定要注意大小写和空格等问题。

案例演示

以下是Java关系运算符的代码示例:

测试代码演示

package com.demo.javase.day09;

/**
 * Java之关系运算符案例演示
 *
 * @Author bug菌
 * @Date 2023-11-08 22:43
 */
public class CompareOperatorTest {
    public static void main(String[] args) {
        int a = 10;
        int b = 5;
        String c = "Hello";
        String d = "hello";
        boolean result1 = (a == b);
        boolean result2 = (a != b);
        boolean result3 = (a > b);
        boolean result4 = (a >= b);
        boolean result5 = (a < b);
        boolean result6 = (a <= b);
        boolean result7 = (c.equals(d));
        boolean result8 = (c.equalsIgnoreCase(d));
        System.out.println("a == b is " + result1);
        System.out.println("a != b is " + result2);
        System.out.println("a > b is " + result3);
        System.out.println("a >= b is " + result4);
        System.out.println("a < b is " + result5);
        System.out.println("a <= b is " + result6);
        System.out.println("c.equals(d) is " + result7);
        System.out.println("c.equalsIgnoreCase(d) is " + result8);
    }
}

  在上述代码示例中,我们定义了两个整数类型变量a和b,以及两个字符串类型变量c和d。然后通过Java中的关系运算符,对这些变量进行了比较,并将比较结果用布尔类型的变量表示。最后,通过System.out.println方法将比较结果输出到控制台中。

测试结果

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

在这里插入图片描述

测试代码分析

  根据如上测试用例,在此我给大家进行深入详细的解读一下测试代码,以便于更多的同学能够理解并加深印象。
  如上测试用例代码演示了Java中的关系运算符。首先定义了两个整型变量a和b,分别赋值为10和5,然后定义两个字符串变量c和d,分别赋值为"Hello"和"hello"。接下来通过关系运算符比较a和b的大小、判断a和b是否相等、判断c和d是否相等以及忽略大小写后判断c和d是否相等,并将结果保存在相应的布尔型变量中。最后输出这些布尔型变量的值。

应用场景案例

以下是Java关系运算符的应用场景案例:

  • 判断一个数是否为奇数或偶数
public static void checkEvenOrOdd(int num) {
    if(num % 2 == 0) {
        System.out.println(num + " is even.");
    } else {
        System.out.println(num + " is odd.");
    }
}
  • 判断一个年份是否为闰年
public static void checkLeapYear(int year) {
    if(year % 4 == 0 && year % 100 != 0 || year % 400 == 0) {
        System.out.println(year + " is leap year.");
    } else {
        System.out.println(year + " is not leap year.");
    }
}
  • 比较两个字符串是否相等
public static void compareStrings(String str1, String str2) {
    if(str1.equals(str2)) {
        System.out.println("The two strings are equal.");
    } else {
        System.out.println("The two strings are not equal.");
    }
}

优缺点分析

以下是Java关系运算符的优点和缺点分析:

优点

  • Java关系运算符使用方便,语法简洁,使用广泛。
  • Java关系运算符具有通用性,可以用于任何基本数据类型的比较。

缺点

  • 对于字符串类型的比较,Java中的关系运算符实际上比较的是字符串的ASCII码值,因此需要特别注意大小写和空格等问题。
  • Java中的关系运算符不能直接用于非基本数据类型的比较,需要借助equals等方法进行比较操作。

类代码方法介绍

以下是Java关系运算符的类代码方法介绍:

  • “==”:判断两个值是否相等
  • “!=”:判断两个值是否不相等
  • “>”:判断一个值是否大于另一个值
  • “>=”:判断一个值是否大于或等于另一个值
  • “<”:判断一个值是否小于另一个值
  • “<=”:判断一个值是否小于或等于另一个值

测试用例

以下是Java关系运算符的测试用例:

@Test
public void testCompareOperator() {
    CompareOperatorExample.checkEvenOrOdd(5);
    CompareOperatorExample.checkLeapYear(2020);
    CompareOperatorExample.compareStrings("hello", "Hello");
    CompareOperatorExample.compareStrings("hello", "hello");
}

运行该测试用例后,将会输出如下结果:

5 is odd.
2020 is leap year.
The two strings are not equal.
The two strings are equal.

全文小结

  本文主要介绍了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电子书籍、简历模板等海量资料。


本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:/a/155948.html

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

3.6 Windows驱动开发:内核进程汇编与反汇编

在笔者上一篇文章《内核MDL读写进程内存》简单介绍了如何通过MDL映射的方式实现进程读写操作&#xff0c;本章将通过如上案例实现远程进程反汇编功能&#xff0c;此类功能也是ARK工具中最常见的功能之一&#xff0c;通常此类功能的实现分为两部分&#xff0c;内核部分只负责读写…

C语言每日一题(31)相交链表

力扣160.相交链表 题目描述 给你两个单链表的头节点 headA 和 headB &#xff0c;请你找出并返回两个单链表相交的起始节点。如果两个链表不存在相交节点&#xff0c;返回 null 。 图示两个链表在节点 c1 开始相交&#xff1a; 题目数据 保证 整个链式结构中不存在环。 注意…

主办方:上海视频媒体,多样式多渠道跨屏传播

传媒如春雨&#xff0c;润物细无声&#xff0c;大家好&#xff0c;我是51媒体网胡老师。 一&#xff0c;邀请视频媒体参加活动发布会&#xff0c;好处多多&#xff0c;首先现场气氛会很热烈&#xff0c;主办方会很有面子&#xff0c;视频媒体不管是电视台还是视频网站&#xf…

【自留地】前端 - uniapp - Vue - React - Flutter

uniapp uniapp自用速查表 - 我的常用组件 uniapp自用速查表 - 我的常用组件_uniapp static/customicons.css-CSDN博客文章浏览阅读1.8k次。uniapp项目登录退出、全局变量与状态、本地存储、Tabbar标签栏、顶部导航栏、下拉刷新、触底刷新、Ajax交互、内置组件样式修改、自定义…

聚观早报 |联想集团Q2财季业绩;小鹏汽车Q3营收

【聚观365】11月17日消息 联想集团Q2财季业绩 小鹏汽车Q3营收 微软发布两款自研AI芯片 FAA批准SpaceX再次发射星际飞船 2023 OPPO开发者大会 联想集团Q2财季业绩 全球数字经济领导企业联想集团公布截至2023年9月30日的2023/24财年第二财季业绩&#xff1a;整体营收达到10…

C++基础从0到1入门编程(一)

系统学习C 方便自己日后复习&#xff0c;错误的地方希望积极指正 参考视频&#xff1a;黑马程序员匠心之作|C教程从0到1入门编程,学习编程不再难 1 第一个C程序-HelloWorld 编写一个C程序分为四个步骤&#xff1a; &#xff08;1&#xff09;创建项目 &#xff08;2&#xff…

深度学习入门(第四天)——递归神经网络与词向量原理解读

一、RNN网络架构解读 常规神经网络并不能考虑时间序列的特征&#xff08;比如前天昨天今天或者带有前后关联的特征&#xff09;&#xff0c;现在每个特征都是独立考虑的&#xff0c;那么如果有这样的特征&#xff0c;网络应该怎么学呢 而递归递归网络hidden这里的转回箭头&…

全球地表水数据集JRC Global Surface Water Mapping Layers, v1.2数据

简介&#xff1a; 全球地表水覆盖&#xff08;Global Surface Water&#xff09;是利用1984至2019年获取的landsat5、landsat7和landsat8的卫星影像&#xff0c;生成分辨率为30米的一套全球地表水覆盖的地图集。用户可以在全球尺度上按地区回溯某个时间上地表水分的变化情况。…

MySQL内部组件与日志详解

MySQL的内部组件结构 MySQL 可以分为 Server 层和存储引擎层两部分。 Server 层主要包括连接器、查询缓存、分析器、优化器、执行器等&#xff0c;涵盖 MySQL 的大多数核心服务功能&#xff0c;以及所有的内置函数&#xff08;如日期、时间、数学和加密函数等&#xff09;&am…

Android开发APP显示头部Bar

Android开发显示头部Bar 需求&#xff1a; 显示如下图&#xff1a; 显示头部Bar&#xff0c;颜色也能自定义。 解决方案 这个修改是在如下三个文件里进行修改&#xff1a; 按顺序修改&#xff1a; themes.xml(night): <resources xmlns:tools"http://schemas.andr…

21 - 深入JVM即时编译器JIT,优化Java编译

说到编译&#xff0c;我猜你一定会想到 .java 文件被编译成 .class 文件的过程&#xff0c;这个编译我们一般称为前端编译。Java 的编译和运行过程非常复杂&#xff0c;除了前端编译&#xff0c;还有运行时编译。由于机器无法直接运行 Java 生成的字节码&#xff0c;所以在运行…

Odoo 15开发手册第六章 模型 - 结构化应用数据

本章我们更进一步学习模型层&#xff0c;以及如何使用模型来设计支撑应用的数据结构。我们会探讨可用的模型类型&#xff0c;以及在使用这些类型时如何定义强制进行数据验证的约束。 模型由支持不同数据类型的数据字段组成&#xff0c;一些字段类型支持定义模型间的关联。对于…

excel导入 Easy Excel

依旧是框架感觉有东西&#xff0c;但是确实是模拟不出来&#xff0c;各种零零散散的件太多了 controller层 ApiOperation(value "导入Excel", notes "导入Excel", httpMethod "POST", response ExcelResponseDTO.class)ApiImplicitParams({…

回调方法Callbak方法的理解——Java中回调的实现方式 从系统调用角度理解回调

目录 回调方法实现用反射实现直接调用callback进化&#xff1a;接口实现分离 匿名内部类 到 函数式编程 从系统调用角度理解回调同步调用异步调用不需要对方结果需要对方的结果 菜鸡问大佬问题案例同步回调异步回调基于Future的半同步 回调方法就是一个参数,将一个A方法作为参数…

Power Automate-创建自定义连接器

点击左侧导航栏&#xff0c;更多&#xff0c;点击全部发现 点击下方的自定义连接器 点击从空白创建 注意命名要用英文 常规信息中可以上传连接器icon、写一些说明 方案是观察接口地址前面的文本&#xff0c;主机是下方接口地址中蓝色框中的内容 点击下一步&#xff0c;根据API自…

CTF-PWN-堆-【前置知识】

CTF-PWN-堆 堆申请堆块main_areanabrk&sbrk函数mallocfreefree后top chunk 堆 由malloc alloc realloc 函数分配 chunk的前指的是地址低的&#xff0c;chunk的高指的是地址高的 申请堆块 ptmalloc2堆管理器&#xff1a; 通俗的讲就是相当于一个”中间商”&#xff0c;在…

Python编程技巧 – 使用列表(list)

Python编程技巧 – 使用列表(list) Python Programming Skills – Using a List 在Python编程语言中&#xff0c;我们会用到许多列表&#xff08;List&#xff09;。 一门强大的编程语言会包含列表&#xff08;或者数组&#xff09;的数据结构。列表&#xff08;或数组&#…

cpolar+LightPicture,将个人电脑改造成公网图床服务器

文章目录 1.前言2. Lightpicture网站搭建2.1. Lightpicture下载和安装2.2. Lightpicture网页测试2.3.cpolar的安装和注册 3.本地网页发布3.1.Cpolar云端设置3.2.Cpolar本地设置 4.公网访问测试5.结语 1.前言 现在的手机越来越先进&#xff0c;功能也越来越多&#xff0c;而手机…

C++ Qt 学习(九):模型视图代理

1. Qt 模型视图代理 Qt 模型视图代理&#xff0c;也可以称为 MVD 模式 模型(model)、视图(view)、代理(delegate)主要用来显示编辑数据 1.1 模型 模型 (Model) 是视图与原始数据之间的接口 原始数据可以是&#xff1a;数据库的一个数据表、内存中的一个 StringList&#xff…

什么是持续集成的自动化测试?

持续集成的自动化测试 如今互联网软件的开发、测试和发布&#xff0c;已经形成了一套非常标准的流程&#xff0c;最重要的组成部分就是持续集成&#xff08;Continuous integration&#xff0c;简称CI&#xff0c;目前主要的持续集成系统是Jenkins&#xff09;。 那么什么是持…