Java 操作符:Java 中操作符优先级、一二三元操作符及逻辑操作符的中德模佛定理_一元二元三元运算符区别

一、操作符介绍与优先级表

我们常见的操作符分为三种,其优先级为:逻辑操作符 < 关系操作符 < 算术操作符

  • 逻辑操作符(也称布尔操作符),是对布尔值进行的运算,它会创建新的布尔值。包括:非(!)、与(&&)、或(||)、异或(^)。
  • 关系操作符(<、<=、==、!=、>、>=)产生一个布尔值。

优先级规则定义了操作符的先后次序,下表按照从上到下按优先级递减的方式排列

优先级操作符
最高级var++和var- -(后置操作符)
+、-(一元加号和一元减号)、++var、- -var(前置操作符)
(type)类型转换
!(非)
*、/、%(乘法、除法和求余运算)
+、-(二元加法和减法)
<、<=、>、>=(比较操作符)
==、!=(相等操作符)
^(亦或)
&&(条件与)
(条件或)
最低级=、+=、-=、*=、/=、%=(赋值操作符)

注意:所有的二元操作符都是左结合(left-associative),赋值操作符是右结合(right-associative)。

二、一元运算符与二元运算符的区别?

一元运算符有且只有一个运算参数,二元运算符有且只有两个运算参数。

例如

  • 一元运算符,如负号 - 1 : 它只能运算一个数据。
  • 二元运算符,如加号 1 + 2 :参加运算的只能是两个数据,多或者少都出错,它是二元运算符。

三、Java 中唯一的三元操作符

符号?在条件表达式中同时出现。它们构成一种条件操作符,因为操作数有三个,所以称为三元操作符(ternary operator),它是 Java 中唯一的三元操作符

在 Java 中的条件表达式基本形式如下:

boolean-expression ? expression1 : expression2;(布尔表达式? 表达式1: 表达式2)

如果布尔表达式的值为 true,则条件表达式的结果为表达式 expression1,否则结果为 expression2。我们通常使用三元操作符来改写 if else 条件语句。

如我们现在实现一个判断票价的条件语句:年龄 age 小于 16 岁半价门票 ticketPrice 为 10 元,否则为全票 20 元。

首先用常规的 if else 条件语句实现,代码如下:

if (age >= 16) {
			ticketPrice = 20;
		} else {
			ticketPrice = 10;
		}

接着我们使用三元操作符来改写,代码如下:

ticketPrice = (age >= 16) ? 20 : 10;

如示例所示,三元操作符的条件表达式可以编写更精简的代码

四、逻辑操作符中的德模佛定理

德模佛定理是以印度出生的英国数学家和逻辑学家奥古斯都▪德▪模佛来命名的(1806——1871),这个定理可以用来简化表达式

定义描述如下:

!(condition1 && condition2)和!condition1 || !condition2是等价的,
!(condition1 || condition2)和!condition1 && !condition2是等价的。

即:

最后的话

无论是哪家公司,都很重视Spring框架技术,重视基础,所以千万别小看任何知识。面试是一个双向选择的过程,不要抱着畏惧的心态去面试,不利于自己的发挥。
同时看中的应该不止薪资,还要看你是不是真的喜欢这家公司,好了希望这篇文章对大家有帮助!

部分截图:
在这里插入图片描述

加入社区:https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0
*

部分截图:
[外链图片转存中…(img-E9oCDkA0-1725641287480)]

加入社区:https://bbs.csdn.net/forums/4304bb5a486d4c3ab8389e65ecb71ac0

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值