运算符

运算符是一些特殊符号,主要用于数学函数,一些类型的赋值语句和逻辑比较方面。Java中提供了丰富的运算符,如赋值运算符,算术运算符和比较运算符等。

一,赋值运算符


赋值运算符以符号“=”表示,它是一个双目运算符,其功能是将右边操作数所含的值赋值给左边的操作数。如:int a = 100;将100赋值给a。左边的操作数必须是一个量,而右边的操作数则可以是变量,常量,有效的表达式(如12*3).

二,算术运算符。

Java中的算术运算符主要与+,-,*,/,%,他们都是双目运算符。Java中算术运算符的功能以及使用方法如下图。

javasc求指数的运算符 java指数运算符号_javasc求指数的运算符


其中“+”和“-”还可以作为数据的正负符号。在进行除法和取余运算时,0不能作为除数。否则会报错。“+”运算符也有拼接字符串的功能。

三,自增和自减运算符

自增和自减运算符是单目运算符,可以放在变量之前,也可以放在变量之后。自增和自减运算符的作用是使变量的值增1或减1。

写法:a++; ++a; a–; --a;.

javasc求指数的运算符 java指数运算符号_Java_02


javasc求指数的运算符 java指数运算符号_Java_03


自增自减运算符摆放位置不同,增减的操作顺序也会随之不同,前置的自增,自减运算符会先将变量的值加1或减1,再让该变量参加表达式的运算。后置的自增,自减运算符会先让变量参与表达式的运算,再将该变量加1或减1。

javasc求指数的运算符 java指数运算符号_运算符_04


javasc求指数的运算符 java指数运算符号_运算符_05


这里是个小难点,一定要理解透。

四,关系运算符

关系运算符都属于双目运算符,用来判断一个操作数与另一个操作数之间的关系。关系运算符的计算结果都是布尔类型的。

javasc求指数的运算符 java指数运算符号_运算符_06

五,逻辑运算符

逻辑运算符是对真和假这两种逻辑值进行运算,运算后的结果仍是一个逻辑值。逻辑运算符包括&&(逻辑与),||(逻辑或),!(逻辑非)。逻辑运算符计算的值必须是boolean型数据,在逻辑运算符中,除了“!”是单目运算符之外,其他都是双目运算符。Java中的逻辑运算符如下图。

javasc求指数的运算符 java指数运算符号_逻辑运算符_07


逻辑运算符的运算结果如下图

javasc求指数的运算符 java指数运算符号_java_08

六,复合赋值运算符

和其他主流编程语言一样,Java中也有复合赋值运算符。所谓的复合赋值运算符,就是将赋值运算符与其他运算符合并成一个运算符来使用,从而同时实现两种运算符的效果。

javasc求指数的运算符 java指数运算符号_java_09


以“+=”为例,虽然“a+=1”与“a=a+1”两者最后的计算结果是相同的,但是在不同的场景下,两种运算符都有各自的优势和劣势。

低精度类型自增。在Java编译环境中,整数的默认类型是int,所以这样的赋值语句会报错:

javasc求指数的运算符 java指数运算符号_运算符_10


在没有进行强制类型转换的条件下,a+1的结果是一个int值,无法直接赋值给一个byte变量。但是如果使用“+=”实现递增计算,就不会出现这个问题。

javasc求指数的运算符 java指数运算符号_Java_11

七,三元运算符。

三元运算符的使用格式位:条件值?值1:值2

三元运算符的运算规则为:若条件式的值为true,则整个表达式取值1,否则取值2。

javasc求指数的运算符 java指数运算符号_javasc求指数的运算符_12


javasc求指数的运算符 java指数运算符号_逻辑运算符_13


另外圆括号可以提升公式中计算过程的优先级,在编程中常用。跟数学中的括号意思差不多。

八,运算符优先级。

Java中的表达式就是使用运算符连接起来的符合Java规则的式子。运算符的优先级决定了表达式中运算执行的先后顺序。通常优先级由高到低的顺序依次是增量和减量运算,算术运算,比较运算,逻辑运算,赋值运算。

如果两个运算有相同的优先级,那么左边的表达式要比右边的表达式先被处理。在编写程序时尽量使用括号“()”运算符来限定运算的次序,一面产生错误的运算顺序。

javasc求指数的运算符 java指数运算符号_Java_14