初識Java(三) --- Java語言的基礎組成(中)

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)語句
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容