Java的运算符

发布于:2024-04-28 ⋅ 阅读:(19) ⋅ 点赞:(0)

前言

       由于Java的运算符大部分和C语言类似,所以这里只会提及与C语言不同的要点~~

算术运算符

基本四则运算

       和C语言一样,Java也有+ - * / %(加、减、乘、除、取模)的算术运算符。

注意Java的取模运算符(%)可以用来进行小数的取模操作。但是C语言不支持,在实际应用中,我们也很少使用小数的取模运算~~



除法和取模运算时,右操作数不能为0,否则会报错,这也是和数学一样的规则。




在运算的时候,如果操作数的类型不同,会往大的数据类型去进行提升。

像这种的运算,a 会提升到long类型,之后a+b的结果就是long类型,我们前面知道不同的数据类型是不能相互赋值的。

增量运算符

和C语言用法一样,有+=,-=,*=,/=,这里不过多介绍~~

自增运算符

和C语言的用法一样,–,++,注意前置和后置的区别就可以了。

关系运算符

==,>,<,>=,<=
这些运算符用在条件表达式(也可以叫做布尔表达式)居多,运算之后的结果是布尔值(true 或者 false)


逻辑运算符

&&(逻辑与),|| (逻辑或),!(逻辑非)这几个运算符只能和布尔表达式搭配
布尔表达式1 && 布尔表达式2,布尔表达式1 || 布尔表达式2,!布尔表达式
这里要注意&& 和 || 和C语言是一样的,是有短路的情况,&&如果前面的表达式为false,就不会去计算后面的表达式,如果 || 前面的表达式为true就不会计算后面的表达式~~


程序没有抛出异常,说明没有计算后面的表达式~~

这里要注意 !(逻辑非) 在Java中只能用在布尔表达式(条件表达式)中,可以将表达式的值右false转变为true,或者由true转变为false~~

位运算符

首先和C语言是一样的用法,并且都有&(按位与),|(按位或),^(按位异或),~(按位取反),这里不再赘述,如果不清楚的可以翻看我的博客http://t.csdnimg.cn/KVZz7

特殊情况,& 和 | 如果表达式结果为 boolean 时, 也表示逻辑运算. 但与 && || 相比, 它们不支持短路求值.



程序抛出异常,说明后面的表达式进行了计算~~


移位运算符

和C语言一样有 << 和 >>,用法是一样的,但是Java中多了一个移位运算符 >>> (无符号的右移),就是每向右移动1位,首位就补0,所以是无符号的右移~~

这里也有<<=,>>=,>>>= 的运算符的~~

条件运算符(三目运算符)

表达式1?表达式2:表达式3
这里要注意的是,在Java中,使用这个运算符时一经使用必须要有变量来接收结果!!!


表达式2和表达式3的结果要是同类型的,除非能发生类型隐式类型转换~~


不仅如此,表达式返回的结果也必须要有变量来接收!!!

运算符的优先级

和C语言一样,还是一句话,你可以不背优先级,不确定哪个先计算,你就加括号保证你想要的运算顺序就可以了~~


网站公告

今日签到

点亮在社区的每一天
去签到