一、算术运算符
算术运算符+、-、*(乘)、/(除)、%(取余)、++(自增)、--(自减)。
其中 / 要特别注意:如果是整型变量相除,则为整除,因为整型变量运算时结果必然是整型变量,不能出现有小数的情况,所以当我们平时自己算整数除法有小数,而电脑则会默认去掉小数部分,只保留整数部分,例如 5/2=2。
当然,我们可以通过强制转换,把其中一个整型变量强制转换为浮点型变量,这样得到的结果就是浮点型变量,这样就可以出现小数部分了,如图所示。(因为+、-、*比较简单,我就不过多赘叙)
拓展:现有四种整型变量(byte,short,int ,long)当有整型变量(long)进行整型运算时,则结果类型为long(自然转换),当没有long类型的变量参与运算时,所有非int类型的变量都转为int类型。
% :取余。一般指除法运算中除数除不尽的那一部分,例如 5/2=2...1,其中1就是余数,如图所示。
++(自增)--(自减)
自增自减各分为两种:++a,a++,--a,a--。四种含义有所区别。(随机拓展:Java中有很多Math函数可以调用,这里我用的是Math.pow(a,b)意为a^b(由于Java中没有^,故而只能这样表示))
赋值运算符:=,-=,+=,/=,*=
a = b 表示将值b赋给变量a,而并不是指a等于b。
-=,+=,/=,*=
关系运算符:> , < , ==(等于) , <=(小于等于) , >=(大于等于) , !=(不等于) 。(比较简单,懂的都懂,如果不能理解,欢迎私信相互交流)
逻辑运算符:&&(与),||(或),!(非)
逻辑与运算(&&):两个变量为真,则结果为真,否则都为假。(借用Boolean类型阐释)
逻辑或运算( || ):两个变量中至少有一个为真,则结果为真,否则为假。
逻辑非运算(!):如果是真,则变为假,如果是假则变为真。
注意:短路运算
当两个变量进行逻辑与运算时,只要运算符前一个变量为假,后一个变量则不管是否为真都不在运行判断。
当两个变量进行逻辑或运算时,只要运算符前一个变量为真,后一个变量则不管是否为真都不在运行判断。
位运算符:&(与),|(或),^(异或:相同为假,不同为真),-(取反) , <<(左移),>>(右移)
如上图,A,B为两个二进制数,以A&B为例,A&B的第i位上的数是由A的第i位与B的第i位决定的(i=0.1.2.3.4....)当且仅当A的第i位与B的第i位同为1时,A&B的第i位才为1,否则都为0(此处可参考逻辑与运算)。取反是指将数中的1全变为0,将0变为1。
>>与<<:如下图所示,以4<<3为例,在十进制中表示为4*2^3,在二进制中则是把0000 0100(4)中的1左移两位。
条件运算符:? 和 :
如图所示:
随机拓展