Java編程基礎(chǔ)元素-運(yùn)算符
1 前言
運(yùn)算符就是在用變量或常量進(jìn)行運(yùn)算時(shí),經(jīng)常需要用到的運(yùn)算符,Java 提供了豐富的運(yùn)算符,可分為4類:算術(shù)運(yùn)算符、關(guān)系運(yùn)算符、邏輯運(yùn)算符和位運(yùn)算符。
2 算術(shù)運(yùn)算符
2.1 四則運(yùn)算
算術(shù)運(yùn)算符的用途類似一般數(shù)學(xué)運(yùn)算中的加(+)、減(-)、乘(×)和除(/)四則運(yùn)算,是經(jīng)常使用的數(shù)學(xué)運(yùn)算符。這些算術(shù)運(yùn)算符在Java語言中的用法及功能與它們在傳統(tǒng)的數(shù)學(xué)中的用法及功能相同。四則運(yùn)算符和數(shù)學(xué)上的功能一模一樣。而求余數(shù)運(yùn)算符“%”用于計(jì)算兩數(shù)相除后的余數(shù),這個(gè)運(yùn)算要求參與運(yùn)算的兩個(gè)操作數(shù)都必須是整數(shù)類型。
public static void main(String[] args) { ? ? int a = 13+5; ? ? int b = 19-2; ? ? int c = 3*5; ? ? int d = 20/2; ? ? System.out.println("a="+a); ? ? System.out.println("b="+b); ? ? System.out.println("c="+c); ? ? System.out.println("d="+d); }
輸出結(jié)果:
a=18
b=17
c=15
d=10
2.2 字符串運(yùn)算符
不過,我們要注意的是加法運(yùn)算符,在Java
中,它除了可以執(zhí)行數(shù)值加的運(yùn)算,還具有“字符串串接”的功能。
public static void main(String[] args) { ? ? int x = 6; ? ? int y = 9; ? ? String z = "xy"; ? ? System.out.println(z + x + y); }
輸出結(jié)果:
xy69
2.3 一元運(yùn)算符
對于很多表達(dá)式而言,運(yùn)算符前后都會有操作數(shù)。但有一類操作符比較特別,它只需要一個(gè)操作數(shù)。這類運(yùn)算符稱為一元運(yùn)算符。常見的一元運(yùn)算符有:+(正號)、 -(負(fù)號)、++(自增)、(–)自減
一元減號可以得到數(shù)據(jù)的負(fù)值。一元加號的作用相反,不過它唯一能影響的就是把較小的數(shù)值類型自動轉(zhuǎn)換為 int
類型。
public static void main(String[] args) { ? ? int x = +5; ? ? int y = -3; ? ? x++; ? ? y--; }
輸出結(jié)果:
x=6
y=-4
3 關(guān)系運(yùn)算符
關(guān)系運(yùn)算符會通過產(chǎn)生一個(gè)布爾(boolean
)結(jié)果來表示操作數(shù)之間的關(guān)系。如果關(guān)系為真,則結(jié)果為 true,如果關(guān)系為假,則結(jié)果為 false
。常見的關(guān)系運(yùn)算符有:==(等于)、!=(不等于)<(小于)、>(大于)、<=(小于等于)和>=(大于等于)
public static void main(String[] args) { ? ? int a = 10; ? ? int b = 11; ? ? boolean result = a == b; ? ? System.out.println(result); }
輸出結(jié)果:
false
4 邏輯運(yùn)算符
每個(gè)邏輯運(yùn)算符根據(jù)參數(shù)的邏輯關(guān)系生成布爾值 true 或 false。常見的邏輯運(yùn)算符有3個(gè),即與(&&)、或(||)、非(?。?/p>
public static void main(String[] args) { ? ? boolean a = true; ? ? int b = 0; ? ? boolean result = a || b++>0; ? ? System.out.println(result);?? ? }
輸出結(jié)果:
true
5 位運(yùn)算符
位運(yùn)算符允許我們操作一個(gè)整型數(shù)字中的單個(gè)二進(jìn)制位。位運(yùn)算符會對兩個(gè)整數(shù)對應(yīng)的位執(zhí)行布爾代數(shù),從而產(chǎn)生結(jié)果。位運(yùn)算符有&(按位與)、|(按位或)、^(按位異或)、<<(左移)、>>(右移)。
左移運(yùn)算符(<<)規(guī)則
按二進(jìn)制形式把所有的數(shù)字向左移動對應(yīng)的位數(shù),高位移出(舍棄),低位的空位補(bǔ)零。
語法格式:需要移位的數(shù)字 << 移位的次數(shù)。例如: 3 << 2,則是將數(shù)字3左移2位
計(jì)算過程:首先把3轉(zhuǎn)換為二進(jìn)制數(shù)字0000 0000 0000 0000 0000 0000 0000 0011,然后把該數(shù)字高位(左側(cè))的兩個(gè)零移出,其他的數(shù)字都朝左平移2位,最后在低位(右側(cè))的兩個(gè)空位補(bǔ)零。則得到的最終結(jié)果是0000 0000 0000 0000 0000 0000 0000 1100,則轉(zhuǎn)換為十進(jìn)制是12。
右移運(yùn)算符(>>)規(guī)則:
按二進(jìn)制形式把所有的數(shù)字向右移動對應(yīng)位移位數(shù),低位移出(舍棄),高位的空位補(bǔ)符號位,即正數(shù)補(bǔ)零,負(fù)數(shù)補(bǔ)1。
語法格式:需要移位的數(shù)字 >> 移位的次數(shù)。例如11 >> 2,則是將數(shù)字11右移2位
計(jì)算過程:
11的二進(jìn)制形式為:0000 0000 0000 0000 0000 0000 0000 1011,然后把低位的最后兩個(gè)數(shù)字移出,因?yàn)樵摂?shù)字是正數(shù),所以在高位補(bǔ)零。則得到的最終結(jié)果是0000 0000 0000 0000 0000 0000 0000 0010。轉(zhuǎn)換為十進(jìn)制是2。
6 碼農(nóng)洞見
6.1 運(yùn)算符思維導(dǎo)圖
6.2 運(yùn)算符優(yōu)先級
運(yùn)算符的優(yōu)先級決定了存在多個(gè)運(yùn)算符時(shí)一個(gè)表達(dá)式各部分的運(yùn)算順序。Java 對運(yùn)算順序作出了特別的規(guī)定。其中,最簡單的規(guī)則就是乘法和除法在加法和減法之前完成。程序員經(jīng)常都會忘記其他優(yōu)先級規(guī)則,所以應(yīng)該用括號明確規(guī)定運(yùn)算順序。運(yùn)算符的優(yōu)先順序:
- 分隔符:
[] () ; ,
- 從右到左結(jié)合:
++ – + - ~ !
- 從左到右結(jié)合:
* / %
- 從左到右結(jié)合:
+ -
- 從左到右結(jié)合:
<< >> >>>
- 從左到右結(jié)合:
< > <= >=
- 從左到右結(jié)合:
== !=
- 從左到右結(jié)合:
&
- 從左到右結(jié)合:
^
- 從左到右結(jié)合:
|
- 從左到右結(jié)合:
&&
- 從左到右結(jié)合:
||
- 從右到左結(jié)合:
?:
- 從右到左結(jié)合:
= *= /= %= += -= <<= >>= >>>= &= ^= |=
同樣優(yōu)先級的運(yùn)算符是從左到右計(jì)算還是從右到左計(jì)算稱為運(yùn)算符的結(jié)合性。
到此這篇關(guān)于Java編程基礎(chǔ)元素-運(yùn)算符的文章就介紹到這了,更多相關(guān)Java元素-運(yùn)算符內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Java異常詳解_動力節(jié)點(diǎn)Java學(xué)院整理
異常是Java語言中的一部分,它代表程序中由各種原因引起的“不正?!币蛩?。下面通過本文給大家介紹java異常的相關(guān)知識,感興趣的朋友一起看看吧2017-06-06spring學(xué)習(xí)之util:properties的使用
這篇文章主要介紹了spring學(xué)習(xí)之util:properties的使用方式,具有很好的參考價(jià)值,希望對大家有所幫助,如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2024-01-01Spring Boot Actuator監(jiān)控的簡單使用方法示例代碼詳解
這篇文章主要介紹了Spring Boot Actuator監(jiān)控的簡單使用,本文通過實(shí)例代碼圖文相結(jié)合給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2020-06-06