Java通過哪些機制處理數據(3)-運算符

一、思維導圖

二、算術運算符

(1)++出現在變量後

++不論是出現在變量的前還是後,變量都自加1。
//++出現在變量前和變量後有什麼區別:
//先看++出現在變量後。
//語法:當++出現在變量後,會先做賦值運算,再加1
Int m =10;
Int n = m++;
System.out.println(m);//11
System.out.println(n);//10

(2)++出現在變量前

//語法規則:當++出現在變量前的時候,會先進行自加1的運算,然後再賦值。
Int x = 100;
Int y  =++x;
System.out.println(x);//101
System.out.println(y);//101

(3)System.out.println(a++)的理解

System.out.println(a++);
相當於有一個變量temp

Int temp;
Temp = a ++;
System.out.println(temp);

 三、關係運算符

所以的關係運算符的運行結果都是布爾類型,不是true就是false,不可能是其他值。

在java語言中:

=:賦值運算符

==:關係運算符,判斷是否相等。

關係運算符中如果有兩個符號的話,兩個符號之間不能有空格。

四、邏輯運算符& 邏輯與(並且) | 邏輯或(或者) ! 邏輯非(取反) && 短路與 || 短路或

特點:(重要)邏輯運算符兩個要求都是布爾類型,並且最終的運算結果也是布爾類型,

(1)邏輯 & :只有兩邊是ture纔是true,只要有false就是false。True & true --> true。

(2)邏輯 | :只要有一邊是true,結果就是true。

(3) & 與 && 的區別:

也就是說,&後面的值是執行了的。

 &&後面的沒有執行。

這兩個運算符的運算結果沒有任何區別,完全相同,只不過“短路與&&”會發生短路現象。

a、什麼是短路現象呢?

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

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

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

五、賦值運算符

(1)賦值運算符包括基本賦值運算符和擴展賦值運算符。

(2)基本賦值運算符?

=

(3)擴展的賦值運算符?

+=,-=,*=,/=,%=

(4)重要的語法機制,使用擴展賦值運算符的時候,永遠都不會改變運算結果類型。

Byte x =100;

X + =1;

x自誕生依賴是byte,那麼x變量的類型永遠都是byte。不會變,不管以後的後面有多少的數字,賦值運算符的右邊優先執行,先執行右邊的表達式,然後將表達式右邊的結果賦值給左邊的“盒子”。

a、 I + =10和 I =i+10真的完全一樣嗎?

然後,我們再看I += 1

 

 其實x + =1 等同於:x =(byte)(x+1);所以可能會損失精度。

六、條件運算符

(1)語法格式:

布爾表達式? 表達式1:表達式2

(2)執行原理是什麼?

布爾表達式的結果爲true時,表達式1的執行結果作爲整個表達式的結果。

布爾表達式的結果爲false時,表達式2的執行結果作爲整個表達式的結果。

Boolean sex = false;

Sex? '女':'男';

這時候會報錯。

//前面的變量c的類型不能隨意編寫。

//最終的計算結果是字符型,所以變量也需要使用char類型。

Char c  = Sex? '女':'男';

七、字符串連接運算符

(1)+運算符在java語言中有兩個作用。

作用1:求和

作用2:字符串拼接

(2)什麼時候求和?什麼時候進行字符串的拼接呢?

當+運算符兩邊都是數字類型的時候,求和。

當+運算符兩邊的“任意一邊”是字符串類型,那麼這個+會進行字符串拼接操作。

(3)字符串拼接完之後的結果還是一個字符串。

注意:當一個表達式當中有多個加號的時候,遵循自左向右的順序依次執行。(除非額外加了小括號)

System.out.println(100+200+"110");//300110

 4個加號只是爲了完成字符串拼接。

	//在Java語言中怎麼定義字符串類型的變量呢?
	String name ="jack";
	//加一個雙引號,然後雙引號之間加兩個加號,然後兩個加號中間加變量名。
System.out.println("登錄成功歡迎"+name+"回來");

總結:運算符是對數據與數據之間的處理。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章