程式設計思想之操作符

2021-08-20 16:31:41 字數 1616 閱讀 5970

###1. 賦值操作符(assignment operator)

賦值使用操作符「=」。它的意思是「取右邊額值,把它複製給左邊」。右邊可以是任何常數、變數或者表示式,但左邊必須是乙個明確的、已命名的變數。

不能把任何東西賦給乙個常數,常數不能作為左值(比如不能說4=a)。

基本型別儲存了實際的數值,而並非指向乙個物件的引用,所以在為其賦值的時候,是直接將乙個地方的內容複製到了另乙個地方。

public static void main(string args) 

輸出結果:

a = 10

b = 10

a = 9

b = 10

對基本資料型別使用b = a,再改變a的值,而b是不會受影響的。

對乙個物件進行操作時,我們真正操作的是對物件的引用,所以倘若「將乙個物件賦值給另乙個物件」,實際是將「引用」從乙個地方複製到另乙個地方。

public class a 

public class test

}輸出結果:

1: a.level = 9

1: b.level = 19

2: a.level = 9

2: b.level = 9

3: a.level = 27

3: b.level = 27

###2.算術操作符(arithmetic operator)

加號(+)、減號(-)、乘號(*)、除號(/)、取模(%)

注:整數除法會直接去掉結果的小數字,而不是四捨五入。

###3.自動遞增和遞減

遞增操作符是「++」,意為「增加乙個單位」;遞減操作符是「- -」,意為「減少乙個單位」。

這兩個操作符各有兩種使用方式,通常稱為「字首式」和「字尾式」。「字首遞增」表示「++」操作符位於變數或表示式的前面,而「字尾遞增」表示「++」操作符位於變數式或表示式的後面;「字首遞減」和「字尾遞減」類似。

對於字首遞增和字首遞減,會先執行計算,再生成值。而對於字尾遞增和字尾遞減,會先生成值,再執行計算。

###4.關係操作符(relation operator)

關係操作符生成的是乙個boolean(布林)結果,它們計算的是運算元的值之間的關係。如果關係是真實的,關係表示式會生成true,如果關係不真實,則生成false。

關係操作符包括小於(<)、大於(>)、小於或等於(<=)、大於或等於(>=)、等於(==)以及不等於(!=).

###5.邏輯操作符(logical operator)

邏輯操作符:與(&&)、或(||)、非(!),根據引數的邏輯關係,生成乙個布林值(true或false)。

#####5.1短路

當使用邏輯操作符時,會遇到一種「短路」現象。即一旦能夠明確無誤地確定整個表示式的值,就不再計算表示式餘下部分了。因此,整個邏輯表示式靠後的部分有可能不會被運算。

###6.按位操作符(bit - by - bit operator)待補充

按位操作符用來操作整數基本資料型別中的單個「位元」(bit),即二進位制位。按位操作符會對兩個引數中對應的位執行布林代數運算,並最終生成乙個結果。

###7.移位操作符

###8.三元操作符if-else

###9.字串操作符+和+=

Java程式設計思想 二 操作符

程式是寫給人看的,不是寫給機器看的!一 操作符 加號或正號 減號或負號 乘 除 賦值 1.優先順序 與數學中的優先順序相似 若string後面緊跟乙個 若後面跟的為非string型別的元素,則會嘗試將這個非string型別的元素轉換為string。2.賦值 1 取右邊的值,把它複製給左邊的值。右值只...

Kotlin學習 集合操作符之總數操作符

原集合 val list num arraylist arraylistof 1,2,3,5,6,7,8 1.any 只要有乙個符合就返回true 操作符 val any list num.any 結果 any true 2.all 集合中所有元素都滿足函式才返回true 操作符 val all l...

c語言操作符 位操作符 移位操作符

1 按位操作符 1.1 按位 與 雙目運算子 僅當兩個運算元都為1時,結果為1,否則為0。參與運算的數以補碼方式出現。例 9 5 1 0000 1001 9的補碼 0000 0101 5的補碼 0000 0001 1的補碼 應用 a 通常將某些位清零或保留某些位。例如 將a的高八位清零,保留低八位,...