运算符
|
运算
|
例子
|
解释
|
+
|
加
|
a+b
|
求a与b相加的和
|
-
|
减
|
a-b
|
求a与b相减的差
|
*
|
乘
|
a*b
|
求a与b相乘的积
|
/
|
除
|
a/b
|
求a除以b的商
|
%
|
取余数
|
a%b
|
求a除以b所得的余数
|
2.单目运算符
运算符
|
运算
|
例子
|
功能等价于
|
++ |
自增 |
a++或++a |
a=a+1 |
-- |
自减 |
a--或--a |
a=a-1 |
- |
求相反数 |
-a |
a=-a |
给大家举个例子:
int x=2;
int y=(++x)*3;
运行结果是x=3;y=9。
再看另外的一个例子:
int x=2;
int y=(x++)*3;
运行结果是x=3,y=6。
这是为什么,因为第一个例子中,是x已经等于3后再算y,而后一个例子中,则是先用x=2算出y后,再算x,因为++符号在后面,这就是++x和x++的区别了。
3)关系运算符
关系运算是比较两个数据之间的大小关系的运算,常用的关系运算符号如下:
运算符
|
例子
|
解释
|
==
|
a==b
|
a等于b
|
!=
|
a!=b
|
a不等于b
|
>
|
a>b
|
a大于b
|
<
|
a<b
|
a小于b
|
>=
|
a>=b
|
a大于等于b
|
<=
|
a<=b
|
a小于等于b
|
关系运算符的结果是步尔值,也就是只有“真”和假两种答案,例如:
int x=5,y=7;
boolean b=(x==y);
则b的值是false。也就是0,计算机中用0可以代表false。
4)其他运算符
1.三目运算符
Java中的三墓运算符与C语言中的完全相同,使用形式为:
x?y:z;
这就是说,先计算x的值,若x为真,怎整个表达式的结果为y的值,若x为假,则整个表达式的值为表达式z的值。
例如:
int x=5,y=8,z=2;
int k=x<3?y:z; //因为x<3,所以k=2;
int j=x>0?x:-x //y的值始终为x的绝对值。
2.逻辑运算
逻辑运算是针对布尔型数据进行的云酸,运算的结果仍然是布尔型量。常用的运算符如下:
运算符
|
运算
|
例子
|
解释
|
& |
非简洁与 |
x&y |
x,y都真时结果才为真 |
| |
非简洁或 |
x|y |
x,y都假时结果才为假 |
! |
取反 |
!=x |
x真时为假,x假时为真 |
^ |
取或 |
x^y |
x,y同真假时结果为假 |
&& |
简洁与 |
x&&y |
x,y都真时结果才为真 |
|| |
简洁或 |
x||y |
x,y都假时结果才为假 |
3.位运算
位运算是对操作数以二进制为单位进行的操作和运算,位运算的操作数和结果都是整形变量。常用的规则列表如下:
运算符
|
运算
|
例子
|
解释
|
~
|
位反
|
~x
|
将x按比特位取反
|
>>
|
右移
|
x>>a
|
x各比特位右移a位
|
<<
|
左移
|
x<<a
|
x各比特位左移a位
|
>>>
|
不带符号的右移
|
x>>>a
|
x各比特位右移a位,左边的空位填零
|
2.复杂运算符
复杂运算符是在先进行某种云酸后,再把运算结果赋给变量。举例如下:
运算符
|
例子
|
解释
|
+=
|
x+=a
|
x=x+a
|
-+
|
x-=a
|
x=x-a
|
*=
|
x*=a
|
x=x*a
|
/=
|
x/=a
|
x=x/a
|
%=
|
x%=a
|
x=x%a
|
&=
|
x&=a
|
x=x&a
|
|=
|
x|=a
|
x=x|a
|
^=
|
x^=a
|
x=x^a
|
<<=
|
x<<=a
|
x=x<<a
|
>>=
|
x>>=a
|
x=x>>a
|
<<<=
|
x<<<=a
|
x=x<<<a
|