Java运算符-三元运算符,这你必须得会!

哈喽,各位小伙伴们,你们好呀,我是喵手。

今天我要给大家分享一些自己日常学习到的一些知识点,并以文字的形式跟大家一起交流,互相学习,一个人虽可以走的更快,但一群人可以走的更远。

我是一名后端开发爱好者,工作日常接触到最多的就是Java语言啦,所以我都尽量抽业余时间把自己所学到所会的,通过文章的形式进行输出,希望以这种方式帮助到更多的初学者或者想入门的小伙伴们,同时也能对自己的技术进行沉淀,加以复盘,查缺补漏。

小伙伴们在批阅的过程中,如果觉得文章不错,欢迎点赞、收藏、关注哦。三连即是对作者我写作道路上最好的鼓励与支持!

前言

在Java开发语言中,三元运算符是一种非常常用的运算符,用于简化条件语句的编写和代码的可读性。本文将介绍三元运算符的基本使用方法,并通过源代码解析、应用场景案例、优缺点分析等来深入了解它的使用。

摘要

三元运算符是一种具有简洁语法特性的运算符,可以根据某个条件的真假来返回两个值中的一个。它相比于传统的if-else语句更加简洁,适用于一些简单的条件判断。

正文

简介

三元运算符的使用格式为:条件 ? 表达式1 : 表达式2。其中,条件是一个布尔表达式,如果满足条件,则执行表达式1并返回其值;否则,执行表达式2并返回其值。三元运算符可以嵌套使用,并且可以作为表达式的一部分。

源代码解析

下面是一个简单的示例代码,演示了三元运算符的基本使用方法:

int a = 10;
int b = 5;
int max = (a > b) ? a : b;
System.out.println("最大值为:" + max);

以上代码中,首先定义了两个变量a和b,并赋予它们不同的值。然后,使用三元运算符判断a是否大于b,如果是,则将a的值赋给max;如果不是,则将b的值赋给max。最后,通过System.out.println()方法打印出max的值。

代码分析:

根据以上代码,首先定义了两个整数变量a和b,它们的值分别为10和5。然后使用三元运算符对a和b进行比较,如果a大于b,那么将a赋值给max;如果a小于等于b,那么将b赋值给max。最后使用System.out.println语句将最大值输出到控制台。在这个例子中,由于a的值大于b,所以最大值为10。因此,控制台将输出"最大值为:10"。

应用场景案例

三元运算符在很多场景中都有广泛的应用,例如:

  1. 求两个数的最大值或最小值。
  2. 根据条件判断返回不同的结果。
  3. 简化条件判断的代码,提高代码的可读性。

优缺点分析

三元运算符的优点在于它具有简洁的语法,能够简化条件判断的编写和代码的可读性。而缺点则在于,它只适用于简单的条件判断,复杂的条件判断还是需要使用if-else语句。

类代码方法介绍

在Java中,三元运算符是作为一个表达式来使用的,所以它并不是一个独立的类或方法。

测试用例

以下是一个测试用例的示例,以main函数的写法为准:

package com.example.javase.ms.operator;

/**
 * @Author ms
 * @Date 2023-12-15 18:05
 */
public class TernaryOperator {

    public static void main(String[] args) {
        int a = 10;
        int b = 5;
        int max = (a > b) ? a : b;
        System.out.println("最大值为:" + max);
    }
}

代码分析:

这段代码演示了使用Java中的三元运算符(条件运算符)的例子。

在这段代码中,首先定义了两个整型变量a和b,并分别赋值为10和5。然后使用三元运算符来比较a和b的大小,如果a大于b,则将a的值赋给变量max;否则将b的值赋给变量max。最后打印出最大值max。

运行结果为:“最大值为:10”,因为a的值大于b,所以最大值为a。

执行结果:

在这里插入图片描述

全文小结

本文介绍了Java中的三元运算符的基本使用方法,通过源代码解析、应用场景案例、优缺点分析等方式深入了解它的使用。三元运算符能够简化条件判断的编写和提高代码的可读性,但只适用于简单的条件判断。

总结

三元运算符是Java开发中常用的一种运算符,能够根据条件的真假返回两个值中的一个。它具有简洁的语法和提高代码可读性的优点,适用于简单的条件判断。在实际开发中,合理使用三元运算符能够简化代码的编写和提高开发效率。

… …

文末

好啦,以上就是我这期的全部内容,如果有任何疑问,欢迎下方留言哦,咱们下期见。

… …

学习不分先后,知识不分多少;事无巨细,当以虚心求教;三人行,必有我师焉!!!

wished for you successed !!!


⭐️若喜欢我,就请关注我叭。

⭐️若对您有用,就请点赞叭。

⭐️若有疑问,就请评论留言告诉我叭。

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

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

相关文章

08-研发流程设计(上):如何设计Go项目的开发流程?

在Go 项目开发中,我们不仅要完成产品功能的开发,还要确保整个过程是高效的,代码是高质量的。 所以,Go 项目开发一定要设计一个合理的研发流程,来提高开发效率、减少软件维护成本。研发流程会因为项目、团队和开发模式…

基于SSM的百货中心供应链管理系统设计与实现(论文+源码)_kaic

摘 要 社会发展日新月异,用计算机应用实现数据管理功能已经算是很完善的了,但是随着移动互联网的到来,处理信息不再受制于地理位置的限制,处理信息及时高效,备受人们的喜爱。本次开发一套百货中心供应链管理系统有管理…

政安晨:【Keras机器学习实践要点】(九)—— 保存、序列化和导出模型

政安晨的个人主页:政安晨 欢迎 👍点赞✍评论⭐收藏 收录专栏: TensorFlow与Keras机器学习实战 希望政安晨的博客能够对您有所裨益,如有不足之处,欢迎在评论区提出指正! 这篇文章是保存、序列化和导出模型的完整指南。 …

python实战之进阶篇(一)

定义类 1. 构造方法 2. 实例方法 3. 类方法 类似于Java中的静态方法, 使用方式: 类名.类方法 4. 私有变量 5. 私有方法 6. 使用属性set和get

vue3+threejs新手从零开发卡牌游戏(二十一):添加战斗与生命值关联逻辑

首先将双方玩家的HP存入store中,stores/common.ts代码如下: import { ref, computed } from vue import { defineStore } from piniaexport const useCommonStore defineStore(common, () > {const _font ref() // 字体const p1HP ref(4000) // 己…

4、Cocos Creator 动画系统

目录 1、Clip 参数 2、动画编辑器 3、基本操作 更改时间轴缩放比例 移动显示区域 更改当前选中的时间轴节点 播放 / 暂停动画 修改 clip 属性 快捷键 4、模拟实验 5、动画事件 6、注意事项 参考 Animation 组件是节点上的一个组件。Clip 动画剪辑就是一份动画的声…

【edge浏览器无法登录某些网站,以及迅雷插件无法生效的解决办法】

edge浏览器无法登录某些网站,以及迅雷插件无法生效的解决办法 edge浏览器无法登录某些网站,但chrome浏览器可以登录浏览器插件无法使用,比如迅雷如果重装插件重装浏览器重装迅雷后仍然出现问题 edge浏览器无法登录某些网站,但chro…

InfoNCE loss

InfoNCE loss是一种用于自监督学习的损失函数,通常用于训练对比学习模型,如自编码器或神经网络。全称是"InfoNCE: Contrastive Estimation of Neural Entropy",基于对比学习的思想,旨在最大化正样本的相似性&#xff0c…

QSplashScreen

以前打红警的时候进入游戏界面会有一个启动界面,比如美国是有伞兵,英国有狙击手,韩国有黑鹰战机的一些介绍,这些就是启动界面,就是由QSplashScreen这个类来实现的。 QSplashScreen 是 Qt 框架中的一个类,用…

【每日跟读】常用英语500句(300~400)

【每日跟读】常用英语500句 I had to take a shower. 我洗了个澡 Go on in. 赶紧进去吧 Hold up. 等一下 They seem like nice people. 他们看起来像好人 Such a wonderful age. 如此美好的年纪 That’s very impressive. 真厉害 I can see that. 看得出来 You should …

绘制多个box箱型图

1.首先生成随机数据 import random # 创建一个153629行,13列的数据, random_data np.random.randn(153629, 13) #创建数据标签,后续将根据数据标签绘制不同的箱型图 label [0,1,2,3] labels np.asarray(random.choices(label,k 153629))…

U盘文件突然消失:原因分析与恢复策略

U盘遭遇“幽灵”之手,文件不翼而飞 你是否曾遭遇过这样的诡异情况:前一天还好好存放在U盘里的文件,第二天却突然消失得无影无踪?这简直就像是一场无声的灾难,令人措手不及。U盘作为我们日常工作和生活中不可或缺的数据…

Gitea 的详细介绍

什么是 Gitea? Gitea 是一个开源、轻量级的自托管 Git 服务,它允许用户搭建类似于 GitHub 或 GitLab 的代码托管平台。由于采用 Go 语言开发,Gitea 具有高效的性能和跨平台特性,适合个人开发者或小团队使用。 Gitea 的特点 轻量…

java数据结构与算法刷题-----LeetCode34. 在排序数组中查找元素的第一个和最后一个位置

java数据结构与算法刷题目录(剑指Offer、LeetCode、ACM)-----主目录-----持续更新(进不去说明我没写完):https://blog.csdn.net/grd_java/article/details/123063846 文章目录 二分查找 二分查找 解题思路:时间复杂度O( l o g 2 …

读所罗门的密码笔记05_新的力量平衡

1. 技术发展 1.1. 美国和中国俨然成为人工智能研究、开发和部署方面无可争议的领导者 1.2. 人类从未彻底阻止某种技术的发展,虽然不同国家在不同时间对克隆、化学武器和核武器等技术采取了暂停或禁止措施,但我们仍在继续推进最前…

mysql之MyBatis核心工作原理

MyBatis核心工作原理 一、源码环境 1.手动编译源码 工欲善其事必先利其器。为了方便我们在看源码的过程中能够方便的添加注释,我们可以自己来从官网下载源码编译生成对应的Jar包,然后上传到本地maven仓库,再引用这个Jar。大家可以自行去官…

第十四届蓝桥杯第十题:蜗牛分享

问题描述 输入格式 输出格式 输出共一行,一个浮点数表示答案(四舍五入保留两位小数)。 样例输入 3 1 10 11 1 1 2 1样例输出 4.20样例说明 蜗牛路线:(0,0)→(1,0)→(1,1)→(10,1)→(10,0)→(11,0)(0,0)→(1,0)→(1,1)→(10,1…

vsqt更改ui,cpp报错(唯二)解决方法,及ui界面布局在cpp文件的运用基本流程

qt的ui布局界面如下 点cpp文件->编译 此时就会自动生成ui_xxx.h 这里是ui文件里面就有类名:Ui_文件名字 下面就有一个类继承于这个类 你所使用的这个ui指针,就这么来的 ***报错解决方法有两种:***第一种:如果改了ui&#x…

Qt+OpenGL入门教程(三)——绘制三角形

通过前两篇文章的学习,我想大家应该有了基本的理解,我们接下来实操一下。 创建Qt OpenGL窗口 QOpenGLWidget QGLWidget是传统QtOpenGL模块的一部分,与其他QGL类一样,应该在新的应用程序中避免使用。相反,从Qt5.4开始…

(五)ROS2学习--创建调用其它包接口的一个发布者

这里写自定义目录标题 一、背景二、构建步骤1. 构建项目包2. 创建消息接口3. 修改“package.xml”4. 修改"src/smart_car/CMakeLists.txt"5. 创建发布者程序 三、编译及验证1. 编译2. 验证 一、背景 主机:Ubuntu20.04 介绍:基于上一篇&#x…