JAVA基础入门
七、运算符
1.Java语言支持如下运算符:
·算术运算符:+、-、*、/、%、++、--
·赋值运算符:=
·关系运算符:>、<、>=、<=、==、!=instanceof
·逻辑运算符:&&、||、!
·位运算符:&、|、^、~、>>、<<、>>>
·条件运算符:?:
·扩展赋值运算符:+=、-=、*=、/=
2.自增自减运算符
++
i++
++i
--
i--
--i
3.逻辑运算
boolean a = true;
boolean b = false;
System.out.println("a && b :"+(a&&b)); //逻辑运算:两个变量都为真,结果才为true
System.out.println("a || b :"+(a||b)) //逻辑运算:两个变量有一个为真,结果就为真
System.out.println("!(a && b) :"+!(a&&b)); //取反
false
true
true
//短路运算
int c = 5;
boolean d = (c<4)&&(c++<4);
System.out.println(d); //false
System.out.println(c);
4.位运算
A = 0011 1100
B = 0000 1101
A&B = 0000 1101 //两个都为1才为1,其余为0
A|B = 0011 1101 //有1就为1
A^B = 0011 0001 //相同为0,不同为1
~B = 1111 0010 // 取相反
<< //左移,相当于 *2
>> //右移,相当于/2
0000 0001 1
0000 0010 2
0000 0011 3
0000 0100 4
0000 0101 5
`
`
`
0001 0000 16
System.out.println(2<<3); //二进制2左移3位·······16
0000 0010 2 ————> 0001 0000 16
5.三元运算符
? :
x ? y : z
如果x==true,则结果为y,否则结果为z
6.优先级***