Skip to content

表达式是一条能够提供值的语句。最觉的是数学表达式,如:

这三条表达式提供了可被赋给变量的值。第一条语句将字面量3赋给变量X。第2条语句将变量X的值赋给变量Y。在第三条语句中,乘法运算符*用来将x和y相乘,结果存储在变量z中。

表达式可以是变量、字面量和运算符的任何组合,也可以是方法调用,因为方法能够将一个值返回给调用它的类或对象。

运算符 1。算术运算符

每个运算符都有两个操作数,一边一个。减法运算符也可以用来对单个操作数求反,即将操作数与-1相乘。

使用除法时,要注意操作数的类型。如果将除法运算的结果存储在整形变量中,结果将向下整,因为int类型不能处理浮点数。

使用运算符%的求模运算得到的是除法运算的余数。

很多针对整数的算术运算的结果为int值,而不管操作数是什么类型。处理其他数值类型,如浮点数或长整型时,应该确保操作数的类型与所需结果的类型相同。

再谈赋值 给变量赋值的语句是一个表达式,因为它生成一个值。 因此,可以用下面这种不同寻常的方式将赋值语句连在一起: x=y=z=7; 在这条语句中,所有3 个变量的值最后都为7;

在赋值之前,将首先计算赋值表达式的右边。因此,可以这样使用表达式语句: x=x+2; 这将先计算x+2;然后将结果(7)赋给变量x。

递增和递减运算符 递增运算符是++,递减运算符是--。这些运算符位于变量名的前面或后面,如: int x = 7; x++;

递增和递减运算符可放在变量名的前面或后面,这将影响表达式的结果。 放前面时叫前缀运算符,放后面叫后缀运算符。

在简单表达式中,前级和后缀运算符,结果都想同,可以互换。然后在更复杂的表达式中时,结果就不一样了。

  • 比较运算符
  • 比较运算符用于返回布尔值的表达式。

逻辑运算符 结果为布尔值的表达式(如比较运算符)可以被组合成更加复杂的表达式。这是通过逻辑运算符来实现的,逻辑运算符用于逻辑组合:AND, OR, XOR和逻辑NOT。

对于AND组合,可以使用逻辑运算符&或&&。仅当两个布尔表达式都为真时,整个表达式的结果才为true。

&和&&之间的差别在于Java对组合表达式所做的工作量。如果使用&,则不管什么情况下,&两边的表达式都将被计算;如果使用&&,则当左边的表达式为falsejf ,将不计算右边的表达式。因此&&的效率更高。

对于OR组合,可使用逻辑运算符|或||。如果运算符两边的任何一个布尔表达式为值,则组合表达式的结果为true。|和||的区别同上。

用于XOR合并的逻辑运算符只有一个:^。仅当被合并的两个布尔表达式值相反时,整个表达式的结果为true;

NOT组合使用逻辑运算符!,后面跟一个表达式。它对布尔表达式的值求反,这与用负号来改变数字的符号相同。

运算符优先级

如果两个运算的优先级相同,则左边的比右边的先被处理。

字符串运算 运算符+还有另一个功能:拼接(concatenate)多个字符串。

运算符+将字符串、其他对象和变量合并为一个字符串。 在Java中,拼接运算符的用法很简单,因为运算符将任何变量类型和对象值都作为字符串进行处理。如果拼接运算的任何一个部分都是String或String字面量,则其他所有元素都将被作为字符串进行处理。

本站总访问 — 次