java學習day03——運算符

運算符

加 +
減 -
乘 *
除 / 整數除以整數,得到的仍是整數,只看商,不看餘數
取模 %
注意事項
一旦運算中有不同類型的數據,結果將會是範圍大的

// int+double --> double +double
  double result = a+2.5;

加法

有三種常見用法

  1. 數值的加法
  2. 對於char類型,計算之前,char會被提升爲int,然後再計算。char類型與int類型之間的對照關係見ASCII,Unicode
  3. 對於字符串String來說,加號代表字符串連接操作。任何數據類型和字符串進行連接的時候,結果都會變成字符串。
public class Demo05Plus{
 public static void main(String[] args){
  String str1 = "Hello";
  System.out.println(str1);
  String str2 = "World";
  System.out.println(str1+str2); // HelloWorld
  // String + int --> String
  System.out.println(str1+20); // Hello20
  // String + int + int 
  // String       + int
  // String
  System.out.println(str1+20+30);  // Hello2030
  System.out.println(str1+(20+30));  // Hello50
 }
}

自增自減

自增 ++
自減 –
使用格式: ++num,也可以num++
使用方式:

  1. 單獨使用:不和其他任何操作混合
  2. 混合使用:和其他操作混合,例如與賦值混合,或與打印操作混合

使用區別:

  1. 單獨使用時,前++與後++沒有任何區別
  2. 混合使用時,有【重大區別】
    A、【前++】,那麼這個變量【立刻馬上+1】,然後拿着結果進行使用 【先加後用】
    B、【後++】,那麼首先使用變量本來的數值,然後再讓變量+1 【先用後加】
    –同理

注意事項:
只有變量才能使用自增、自減運算符,常量不能

public class Demo06Operator{
 public static void main(String args[]){
  int num1 = 10;
  System.out.println(num1);
  ++num1; //單獨使用
  System.out.println(num1);// 11
  num1++;
  System.out.println(num1);// 12
  System.out.println("===============");
  System.out.println(++num1);//前++,結果爲13
  System.out.println(num1++);//後++,結果爲13
  System.out.println(num1);// 14
 }
}

賦值運算符

= 、 += 、 -= 、 *= 、 /=、 %=
注意事項

  1. 只有變量才能使用賦值運算符,常量不能
  2. 複合運算符中隱含了一個強制類型轉換

比較運算符

==、<、>、<=、>=、!=
注意事項:

  1. 比較運算符的結果一定是boolean值
  2. 如果進行多次判斷,不能連着寫 ,如1<x<3,可以連着寫 1<x&&x<3

邏輯運算符

連接兩個boolean值
與 &&
或 ||
非 !
注意事項:

  1. 與“&&”,或“||”,具有短路效果,如果根據左邊已經可以判斷得到最終結果,那麼右邊的代碼不再執行,從而節省一定的性能
  2. 與“&&”,或“||”,如果有多個條件,可以連續寫
    條件A&&條件B&&條件C

三元運算符

一元運算符:如取反!、自增++、自減–
二元運算符:如加法+、賦值=
三元運算符:
格式:
數據類型 變量名稱 = 條件判斷 ? 表達式A:表達式B
條件判斷爲true,將表達式A的值賦給左側的變量,繁殖將表達式B的值賦給左側的變量
注意事項:

  1. 必須同時保證表達式A和表達式B都符合左側數據類型的要求。
  2. 三元運算符的結果必須被使用

方法(面向對象)

定義一個方法的格式:

public static void 方法名稱(){
 方法體
} 

方法名稱的命名規則和變量一樣,使用小駝峯
注意事項:

  1. 方法定義的先後順序無所謂
  2. 方法的定義不能產生嵌套包含關係
  3. 方法定義好了之後不會執行,如果要執行,一定要進行方法的【調用】
    如何調用方法:
    方法名稱();
public class Demo11Method{
 public static void main(String[] args){
  //調用廚子的方法
  cook();
 }
 
 public static void farmer(){
  System.out.println("農民");
 }
 
 public static void seller(){
  System.out.println("小商販");
 }
 
 public static void cook(){
  System.out.println("廚子");
 }
 
 public static void me(){
  System.out.println("我");
 }
}

jshell:輕量級

是一種命令解析器,在cmd窗口輸入jshell即可進入

編譯器的兩點優化

在這裏插入圖片描述

選擇結構

if-else if-else格式

if(關係表達式){
 執行語句1;
}else if (判斷條件2){
 執行語句2;
}
...
else if (判斷條件n){
 執行語句n;
}else{
 執行語句n+1;
}

switch格式

switch(表達式) {
 case 常量值1:
  語句體1;
  break;
 case 常量值2:
  語句體2;
  break;
 ...
 default:
  語句體n+1;
  break;
}

switch語句注意事項

  1. 多個case後面的數值不能重複
  2. switch後面小括號當中只能是下列數據類型:
    基本數據類型:byte/short/char/int
    引用數據類型:String字符串、enum枚舉
  3. switch語句格式可以很靈活:前後順序可以顛倒,break語句還可以省略
    匹配哪一個case就從哪一個位置向下執行,直到遇到了break或整體結束爲止,下面優case就穿透他
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章