天天看點

Java入門必看!Java運算符(超詳細)

作者:雲端源想IT教育訓練
Java入門必看!Java運算符(超詳細)

“這裡是offer學堂,幫你輕松拿offer”

嗨~ 今天的你過得還好嗎?

明天就是周六啦!

是以今天最重要的任務就是等下班!

又一波幹貨來襲!

速速收藏!

- 2023.03.17 -

不知不覺又到周五啦,大家是不是都在計劃周末去哪兒玩?計劃趕不上變化,不如先來看看小編今天分享的内容吧!今天給大家整理了超詳細的Java運算符知識,啥也不說了快收藏吧!

Java入門必看!Java運算符(超詳細)

什麼是運算符?

運算符就是一種告訴編譯器執行特定的數學或邏輯操作的符号,用來表示針對資料的特定操作,也稱之為操作符。

在Java當中,運算符可以分為:算術運算符、 關系運算符、邏輯運算符、位運算符、移位運算符以及條件運算符等。下面我們詳細看一下每種運算符是怎樣的,以及部分使用案例:

一、算術運算符

1、基本的四則運算:加減乘除模(+、 -、 *、 / 、%)

注意點:

(1)這些運算符都是二進制運算符,使用時必須要有左右兩個操作數。

Java入門必看!Java運算符(超詳細)

(2)同C語言一樣,int / int的結果還是int,而且會向下取整。

要出現小數點,那就轉成double類型或在最後*1.0。

Java入門必看!Java運算符(超詳細)

(3)除法和取模操作時,右操作數不能為0,否則會報出異常。

Java入門必看!Java運算符(超詳細)

(4)%在Java中不但可以對整數進行取模,還可以對double進行取模操作。

(5)兩邊操作數不相同的時候,會發生類型提升。這個我們來看一個特例:

Java入門必看!Java運算符(超詳細)

如圖:對兩個short類型進行相加,再用short進行接受,發現報錯,提示是從int到short可能會有損失。為了計算的友善,Java在将小于4個位元組的類型進行計算的時候,會将其隐形提升到int類型。上面兩個short均被提升到int,在用short接收,就會報錯。解決辦法是進行強制類型轉換。

Java入門必看!Java運算符(超詳細)

2、增量運算符+=(自加一次等于)、 -=(自減一次等于 、*=(自乘一次等于) 、%=(求餘等于)

該種類型運算符操作完成後,會将操縱的結果指派給左操作數。要注意隻有變量才可以使用該運算符,常量不允許被修改,不能使用。

Java入門必看!Java運算符(超詳細)

3、自增/自減運算符 ++/--

這兩種運算符有前置和後置之分。如果是單獨使用,那麼前置和後置是沒有差別的,如果是混合使用:

Java入門必看!Java運算符(超詳細)

混合使用,【前置++】先+1,然後使用變量+1之後的值,【後置++】先使用變量原來的值,表達式結束時給變量+1 隻有變量才能使用自增/自減運算符,常量不能使用,因為常量不允許被修改。

二、關系運算符

主要有六個: ==(等于)、 !=(不等于)、 >(大于)、 >=(大于等于)、<(小于)、<=(小于等于) ,其計算結果是 true 或者 false 。在Java中,隻有true和false,不存在0表示假,非0表示真。

Java入門必看!Java運算符(超詳細)

當需要多次判斷時,不能連着寫,比如:3 < a < 5,在C語言當中,是可以運作的,但是在Java當中會報錯,需要寫成3 <

三、邏輯運算符

邏輯運算符主要有:&(按位與),&&(短路與),|(按位或),||(短路或),!(非,即取反)。

1.短路與 &&

短路與&& 和 邏輯與 &有什麼差別?

首先這兩個運算符的運算結果沒有任何差別,完全相同。

隻不過“短路與&&”會發生短路現象。

Java入門必看!Java運算符(超詳細)

什麼是短路現象呢?

右邊表達式不執行,這種現象叫做短路現象。

什麼時候使用&&,什麼時候使用& ?

從效率方面來說,&&比&的效率高一些。因為邏輯與&不管第一個表達式結果是什麼,第二個表達式一定會執行。

Java入門必看!Java運算符(超詳細)

在以後的開發中,短路與&&和邏輯與還是需要同時并存的。大部分情況下都建議使用短路與&&隻有當既需要左邊表達式執行,又需要右邊表達式執行的時候,才會選擇邏輯與&。

2.短路或 ||

跟短路與類似

Java入門必看!Java運算符(超詳細)
  • 使用短路與 && 的時候,當左邊的表達式為false的時候,右邊的表達式不執行
  • 使用短路或 || 的時候當左邊的表達式結果是true的時候,右邊的表達式不執行

注意:邏輯運算符兩邊要求都是布爾類型,并且最終的運算結果也是布爾類型。

四、位運算符

資料存儲的最小機關是位元組,而資料操作的最小機關是比特位。位元組是最小的存儲機關,每個位元組是由8個二進制比特位組成的,多個位元組組合在一起可以表示各種不同的資料。位運算表示按照二進制的每一位進行運算。

Java入門必看!Java運算符(超詳細)

1、按位與&

如果兩個二進制位都是 1,則結果為 1,否則結果為 0。

Java入門必看!Java運算符(超詳細)
Java入門必看!Java運算符(超詳細)

2、按位或|

如果兩個二進制位有一個是1,則結果是1,否則都是0,結果是0。

Java入門必看!Java運算符(超詳細)
Java入門必看!Java運算符(超詳細)

3、按位異或^

如果兩個二進制位相同,則結果是0,否則是1。

4、按位取反~

如果該二進制位是1,則變成0,是0,變成1。

五、移位運算符

Java和C語言不同的地方在于,Java多了一個>>>,表示無符号右移。Java的移位運算符有三個: <<、>>、>>> 。都是二進制運算符,且都是按照二進制比特位來運算的。

Java入門必看!Java運算符(超詳細)
  • 左移:<<最左側位不要了,在最右側補零。左移 1 位,相當于原數字 * 2。左移 N 位,相當于原數字 * 2 的N次方。
  • 右移:>>最右側不要了,在最左側如果是正數,補0,負數補1。右移 1 位,相當于原數字 / 2。右移 N 位,相當于原數字 / 2 的N次方。
  • 無符号右移:>>>最右側位不要了,最左側補0。
  • 移動負數位或者移位位數過大都沒有意義。
Java入門必看!Java運算符(超詳細)

計算機在進行運算的時候,實際上是按照二進制運算的。加減等在運算的時候被轉化成二進制的形式進行運算。計算機計算移位效率高于計算乘除,比如當某個代碼正好乘除 2 的N次方的時候可以用移位運算代替。有的時候,可以拿來裝逼用用。比如求兩個數的平均值:

Java入門必看!Java運算符(超詳細)

六、條件運算符

條件運算符隻有一個:表達式1: 表達式2 : 表達式3。

當表達式1為true時,執行表達式2,表達式3不在執行,否則執行表達式2。這個是Java當中唯一的一個三目運算符。

Java入門必看!Java運算符(超詳細)

表達式2和表達式3的結果需要同類型的,表達式不能單獨存在。

Java入門必看!Java運算符(超詳細)
Java入門必看!Java運算符(超詳細)
Java入門必看!Java運算符(超詳細)

七、運算符的優先級

Java入門必看!Java運算符(超詳細)

看到圖中這麼多内容,是不是頭都大了,其實不必記憶,在使用的時候直接加括号就可以了。

Java入門必看!Java運算符(超詳細)

今天的分享就到這裡了,想了解更多程式設計知識,記得常來看我!

Java入門必看!Java運算符(超詳細)

我們下期再見!

END

文案編輯|雲端學長

文案配圖|雲端學長

内容由:雲端源想分享

Java入門必看!Java運算符(超詳細)