入门篇-其之七-Java运算符(下)

这篇具有很好参考价值的文章主要介绍了入门篇-其之七-Java运算符(下)。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

一、三元运算符的使用

三元运算符(也称作三目运算符),使用:?表示,其格式为:布尔表达式 ? 表达式1 : 表达式2

  • 如果布尔表达式的计算结果是true,那么执行表达式1;否则,如果布尔表达式的计算结果是false,则执行表达式2。
  • 表达式1和表达式2计算结果的数据类型必须要和左侧变量定义的数据类型保持一致。例如:表达式1和表达式2的计算结果都是double类型,那么左侧定义的变量类型也是double

以下是三元运算符作用原理图:

以下是三元运算符在代码中的使用:

/**
 * 三元运算符的使用
 *
 * @author ZhaoCong
 * @date 2023-10-25 11:57:21
 */
public class Ternary {
    public static void main(String[] args) {
        byte byteValue1 = 20;
        byte byteValue2 = 30;

        byte result1 = byteValue1 > byteValue2 ? byteValue1 : byteValue2;
        System.out.println("result1 = " + result1);

        double doubleValue1 = 40.13;
        double doubleValue2 = 30.28;

        double result2 = doubleValue1 == doubleValue2 ? doubleValue1 : doubleValue2;
        System.out.println("result2 = " + result2);

        String strValue1 = "";
        String result3 = strValue1.length() == 0 ? "strValue1的长度是0" : "strValue1的长度不是0";
        System.out.println("result3 = " + result3);
    }
}

运行结果:

三元运算符可以嵌套使用,但不推荐,原因是可读性变差。

String strValue = "iCode504";
int length = strValue.length();
// 不推荐嵌套的写法
String result = length > 0 ? length < 10 ? "strValue的长度在0~10之间" : "strValue的长度超过10" : "strValue的长度为0";
System.out.println("result = " + result);

嵌套式写法做进一步简化处理:

String strValue = "iCode504";
int length = strValue.length();
String result = length > 0 && length < 10 ? "strValue的长度在0~10之间" : "strValue的长度不在0~10之间";
System.out.println(result);

二、三元运算符和if语句的区别

共同点:三元运算符和if语句的作用都是用作条件判断。但二者也存在一些差别:

1. 语法层面:在大多数情况下,三元运算符语法是一行语句,if语句可能是多行。例如:判断一个字符串的长度是否为0,以下分别是三元运算符和if语句的写法:

// 三元运算符写法
String strValue = "iCode504";
String result = strValue.length() == 0 ? "strValue的长度为0" : "strValue的长度不为0";
// if写法
String strValue = "iCode504";
String result;
if (strValue.length() == 0) {
    result = "strValue的长度为0";
} else {
    result = "strValue的长度不为0";
}

2. 代码可读性:对于简单的条件判断,使用三元运算符确实可以简化代码,但是如果是复杂条件或者嵌套,那么三元运算符会让代码变得更加复杂难以理解。

3. 灵活性:if语句中可以在代码块中放入更多的表达式,但是三目运算符的表达式只能存在一个。

总体来说,三目运算符和if语句都有各自的优点和使用场景。在简单的情况下,使用三目运算符比较方便;在复杂情况下,使用if语句更合适。

三、运算符的优先级

前面学过和很多的运算符:例如算术运算符、比较运算符、逻辑运算符等等,如果这些运算符进行混合运算时,存在着一个优先级,即谁先计算,谁后计算的问题。数学中存在这样一条规定:先乘除,后加减。也就是说,乘和除是同一级别,二者的计算级别要比加和减的级别高。这条规定在Java中也完全适用。

以下是运算符的优先级顺序表(由高到低,这张表了解即可,不需要额外记忆):

运算符 关联性
() [] 从左向右
! ~ ++ -- 正负号 从右向左
* / % 从左向右
+ - 从左向右
<< >> >>> 从左向右
< <= > >= instanceof 从左向右
== != 从左向右
& 从左向右
^ 从左向右
| 从左向右
&& 从左向右
|| 从左向右
?: 从右向左
= += -= *= /= %= &= |= ^= <<= >>= >>>= 从右向左

使用括号()可以提升运算符的优先级。例如:

int value1 = 30;
int value2 = 28;
int value3 = 17;
int result1 = value1 * value2 + value3;		// 先乘除,后加减
int result2 = value1 * (value2 + value3);	// 有括号的优先计算

原本加号的运算等级要比乘号的等级要低,但是给加法表达式加上括号以后,加法表达式优先计算,然后再计算乘除法。文章来源地址https://www.toymoban.com/news/detail-711329.html

到了这里,关于入门篇-其之七-Java运算符(下)的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

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

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

相关文章

  • 三元运算符

    三元运算符 三元运算符通常在Python⾥被称为条件表达式 这些表达式基于真(true)/假(not)的条件判 断 在Python 2.4以上才有了三元操作。 下⾯是⼀个伪代码和例⼦: 伪代码: 它允许⽤简单的⼀⾏快速判断,⽽不是使⽤复杂的多⾏ if 语句。 这在⼤多数时候⾮常有 ⽤,⽽且可以使代

    2023年04月27日
    浏览(74)
  • python中的三元运算符

    在python中这样规定三元运算符的使用方法: [on true] if [expression] else [on false] 当 expression 表达式为真的时候执行 on true 代码,当表达式为假的时候执行 on false 代码    

    2024年02月12日
    浏览(52)
  • PHP两个三元运算符“??” 和“?:”的用法和区别

    在PHP 7中,有两个类似的语法结构:“??”和“?:”,它们都是用于处理条件判断和返回值的运算符。尽管它们看起来相似,但它们的作用和用法有一些区别。 \\\"?:\\\"是三目运算符,语法格式为:$result = $test ? t e s t : ′ ′ ; 意思就是当 test:\\\'\\\';意思就是当 t es t : ′′ ; 意思就是当

    2024年03月17日
    浏览(47)
  • FPGA四选一的多路选择器(用三元运算符?:解决)

           ?:符号通常用于条件运算符,表示条件判断。它类似于C语言中的三元运算符,用于根据条件选择不同的操作或值。         例如,在Verilog中,条件运算符?:可以用于if-else语句的简写形式。它的一般语法格式如下:         如果表达式为真,则结果为结果1;否

    2024年01月21日
    浏览(51)
  • 探索JavaScript中强大的三元运算符:简洁、灵活、提升代码效率

    三元运算是一种在编程中常见的条件表达式。它使用三个操作数进行条件判断,并返回两个值中的一个,具体取决于条件的真假。 三元运算符的优势:相比于使用传统的 if-else 语句,三元运算符可以简化代码并提高代码的可读性。它可以使条件判断和返回结果在一行内完成,

    2024年01月16日
    浏览(63)
  • Python中的三元运算符:简洁高效的条件表达式

    什么是三元运算符 三元运算符是一种简洁高效的条件表达式,用于根据条件的真假来返回不同的值。它是一种特殊的运算符,由三个操作数组成,形式为 [结果为真的值] if [条件] else [结果为假的值] 。 Python中的三元运算符语法 Python中的三元运算符的语法如下: 三元运算符的

    2024年01月19日
    浏览(59)
  • 【Java入门】运算符

    前言 📕作者简介: 热爱跑步的恒川 ,致力于C/C++、Java、Python等多编程语言,热爱跑步,喜爱音乐的一位博主。 📗本文收录于Java入门篇系列,该专栏主要讲解:什么是java、java的数据类型与变量、运算符、程序的逻辑控制、方法的使用、数组的定义与使、类和对象、继承和

    2024年02月07日
    浏览(57)
  • Go 是否有三元运算符?Rust 和 Python 是怎么做的?

    嗨,大家好!本文是系列文章 Go 技巧第十四篇,系列文章查看:Go 语言技巧。 今天来聊聊在 Go 语言中是否支持三元运算符。这个问题很简单,没有。 首先,什么是三元运算符? 在其他一些编程语言中,如 C 语言,三元运算符是一种可以用一行代码实现条件选择的简便方法

    2024年02月20日
    浏览(61)
  • 4、Java入门教程【运算符】

    java中的运算符可以分成以下几组: 算术运算符 关系运算符 位运算符 逻辑运算符 赋值运算符 其他运算符 操作符 描述 例子 + 加法 - 相加运算符两侧的值 A + B 等于 30 - 减法 - 左操作数减去右操作数 A – B 等于 -10 * 乘法 - 相乘操作符两侧的值 A * B等于200 / 除法 - 左操作数除以

    2024年02月16日
    浏览(39)
  • 7.JS里表达式,if条件判断,三元运算符,switch语句,断点调试

    表达式就是可以被求值的代码比如什么a = 1 语句就是一段可以执行的代码比如什么if else 直接给B站的黑马程序员的老师引流一波总结的真好 就是基本上所有的语言都会有的if else 语句就是满足不同的条件执行不同的代码,让计算机有条件判断的能力。 注意在if的括号里面除了

    2024年02月20日
    浏览(52)

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

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

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

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

二维码1

领取红包

二维码2

领红包