Java的基礎語法(三): 運算符

7.運算符

定義: 對常量和變量進行操做的符號spa

分類: 6大類---算術, 賦值, 比較, 邏輯, 位, 三元code

(1).算術運算符blog

+, -, *, / ,%, ++, --字符串

①. +號在Java中一共有3種做用: 正號, 加法運算, 字符串鏈接符class

②. / 獲取商, 整數相除只能達到整數(若是想獲得小數,必須把數據變成浮點型)變量

技巧: 把其中一個數變成小數, 則另外一個數在運算時會自動類型提高技巧

③. %獲取餘數(讀法:取模)語法

栗子:
a % b
當|a|<|b|,結果是 a;
當|a|=|b| or b的倍數,結果是 0;
當|a|>|b|,結果是 餘數;

小拓展:
對於一個三位數num,獲取它的每一位
個位: num%10
十位: num/10%10
百位: num/10/10%10

結論: %運算的結果的符號只有左邊數據有關,與右邊無關二進制

應用: 任何一個正整數%2, 結果不是0就是1, 以此可用來做爲判斷切換條件數據

④. ++(自加) 和 --(自減)運算

++: 對原有數據進行 +1;

--: 對原有數據進行 -1;

a.單獨使用:
放在操做數的先後效果同樣;
b.參與運算使用:
放在操做數以前,則該數據先自增/自減,然後在參與運算; 放在操做數以後,則該數據先參與運算,再進行自增/自減;

注意:
數據進行++/--運算時,系統會默認加一個類型強制轉換符
栗子:
byte b = 10;
b++;//該句等價於: b = (byte)(b+1);

(2).賦值運算符

基本: =

(左邊必須是變量),把右邊的數據賦值給左邊

拓展: +=, -=, *=, /=, %= 

把左邊數據和右邊數據做相應的運算後,再賦值給左邊

栗子:
a+=4; //至關於 a = a+4;

(3).關係運算符

==, !=, >, >=, <, <=

不管操做簡單仍是複雜,關係運算符的計算結果都是boolean類型(true / false)

(4).邏輯運算符

&, |, ^, !, &&, ||

①. 基本用法:

a. 通常用於鏈接boolean類型的表達式或值
b. 表達式:用運算符把常量/變量鏈接起來符合Java語法的式子
栗子:
算術表達式: a + b
比較比較式: a == b

②. 特色:

邏輯與: &, and, 遇false則false;
邏輯或: |, or, 遇true則true;
邏輯異或: ^, 兩邊相同爲false,兩邊不一樣爲true;
邏輯非: !, 非false則true,非true則false;

③. && 和 ||

&& 和 & 區別:
最終結果都同樣;
&& 具備短路效果, 左邊false則右邊不執行

|| 和 | 區別:
最終結果都同樣;
|| 具備短路效果, 左邊true則右邊不執行

(5).位運算符

直接操做二進制, 暫且跳過, 往後再補...

(6).三元運算符

格式:  ( 關係表達式 ) ? 表達式1 : 表達式2;

執行流程: 

先判斷關係表達式的結果是true仍是false:

true: 則賦予表達式1的值

false:則賦予表達式2的值

//求兩個整數的最大值
int x = 10;
int y = 20;
int max = (x > y) ? x : y

//求三個整數最大值
int a = 10;
int b = 20;
int c = 30;
int temp = (a > b) ? a : b;
int max = (temp > c) ? temp : c;
相關文章
相關標籤/搜索