Java語言的基礎組成
①關(guān)鍵字 ②標識符 ③注釋 ④常量和變量 ⑤運算符 ⑥語句 ⑦函數(shù) ⑧數(shù)組
5. 運算符
-
算術(shù)運算符
+ 加法 - 減法 * 乘法 / 除法 % 取余(模運算) + 連接符 ++ 自增 -- 自減任何數(shù) %2 不是0就是1 (開關(guān)運算)
a%b 涉及到負數(shù)運算時,結(jié)果只與被模數(shù)a的符號相同++ 和 -- 可放數(shù)值變量的左邊,也可放右邊(++a 或 a++) 在左邊時數(shù)值變量自增或者自減,然后再代入表達式中運算 eg:int a = 3,b; b = ++a; ==> 輸出 a = 4,b = 4 在右邊時數(shù)值變量先代入表達式中運算,運算完后數(shù)值變量再自增或者自減 eg:int a = 3,b; b = a++; ==> 輸出 a = 4,b = 3 -
賦值運算符
= += -= *= /= %= (左右兩邊的值運算后賦值給左邊)eg:short s = 3; ① s += 4; //像定義short變量一樣,會數(shù)據(jù)類型自動轉(zhuǎn)換 ② s = (short)(s + 4); //s會數(shù)據(jù)類型自動提升成int型,運算完后需手動強轉(zhuǎn)成short型 -
比較運算符
> 大于 >= 大于等于 < 小于 <= 小于等于 == 等于 != 不等于 //數(shù)值類型比較的是值,引用數(shù)據(jù)類型比較的是地址值(是否同一個對象)注:比較運算符運算完的結(jié)果一定都是 true 或者 false
-
邏輯運算符
用于連接兩個boolean類型的表達式&:與 //都為true,則為true;有一個為false,則為false &&:雙與(短路與) //程序從左向右執(zhí)行,一旦執(zhí)行到false,右邊的表達式直接跳過,不會執(zhí)行了 |:或 //都為false,則為false;有一個為true,則為true ||:雙或(短路或) //程序從左向右執(zhí)行,一旦執(zhí)行到true,右邊的表達式直接跳過,不會執(zhí)行了 ^:異或 //兩邊結(jié)果相同,為false;兩邊結(jié)果不同,為true !:非 //取反 !true = false;!false = true -
位運算符
針對二進制數(shù)進行運算(進行位運算前需將數(shù)據(jù)先轉(zhuǎn)換位二進制數(shù))<<:左移 //被移除數(shù)的最高位舍棄,空缺位補0(左移幾位就是該數(shù)乘以2的幾次冪) >>:右移 //被移除數(shù)的最高位是什么,空缺位補什么(右移幾位就是該數(shù)除以2的幾次冪) >>>:無符號右移 //被移除數(shù)的最高位無論是什么,空缺位都補0 (0代表false,1代表true) &:二進制數(shù)進行&運算 //只跟較小數(shù)的最后幾位二進制位有關(guān) |:二進制數(shù)進行|運算 //取兩個數(shù)的有效位 ^:二進制數(shù)進行^運算 //一個數(shù)異或同一個數(shù)兩次,結(jié)果還是還是這個數(shù)(可用于加密文件) -
三元運算符
(條件表達式) ? 表達式1 : 表達式2 如果條件表達式返回true,運算后的結(jié)果為表達式1 如果條件表達式返回false,運算后的結(jié)果為表達式2注:三元表達式就是一個簡單的if-else語句,在下個小節(jié)會講到區(qū)別

6. 語句
-
判斷語句
第一種格式
if(條件表達式)
{
執(zhí)行語句;
}
第二種格式
if(條件表達式)
{
執(zhí)行語句1;
}else{
執(zhí)行語句2;
}
第三種格式
if(條件表達式1)
{
執(zhí)行語句1;
}else if(條件表達式2){
執(zhí)行語句2;
}
...
else{
執(zhí)行語句n;
}
if判斷語句中要明確自己的控制語句;當控制語句只有一句時,大括號可省略不寫
三元運算符與if...else語句的區(qū)別:
三元運算符必須要有運算結(jié)果; if...else語句可以是運算結(jié)果,也可以是輸出語句
- 選擇語句
switch(條件表達式) {
case 取值1:
執(zhí)行語句1;
break;
case 取值2:
執(zhí)行語句2;
break;
...
default:
執(zhí)行語句n;
break;
}
case的順序可顛倒;靠近大括號的最下面的break可省略不寫,但一般不推薦
if語句和switch語句的區(qū)別:
if語句:
1.對具體的值進行判斷
2.對區(qū)間進行判斷
3.對運算結(jié)果是boolean類型的表達式進行判斷
switch語句:
1.對具體的值進行判斷
2.值的個數(shù)通常是固定的
對于幾個固定的值的判斷,建議使用switch語句.因為switch語句會將具體的答案都加載進內(nèi)存,效率相對高一些
- 循環(huán)語句
while循環(huán)語句格式
while(條件表達式) {
執(zhí)行語句; //循環(huán)體
}
do while循環(huán)語句格式
do {
執(zhí)行語句; //循環(huán)體
} while(條件表達式)
注:do while循環(huán)語句特點:無論條件是否滿足,循環(huán)體至少執(zhí)行一次
for循環(huán)語句格式
for (初始化表達式; 循環(huán)條件表達式; 循環(huán)后的操作表達式) {
執(zhí)行語句; //循環(huán)體
}
break: 跳出
作用范圍:要么是switch語句,要么是循環(huán)語句
當break存在嵌套循環(huán)中,break當指定循環(huán)名跳出哪個循環(huán),否則跳出當前循環(huán)
continue: 結(jié)束本次循環(huán),繼續(xù)下次循環(huán)
作用范圍:循環(huán)語句