天天看點

學習筆記整理-JAVA語言基礎

1.Java中的資料類型分幾類?基本資料類型有哪些? 基本資料類型,和引用資料類型; 基本資料類型分為: byte

    short

    int

    long

    bolean

    fort

    double

    char

2.引用資料類型:

類、接口類型、數組類型、枚舉類型、注解類型

差別: 基本資料類型在被建立時,在棧上給其劃分一塊記憶體,将數值直接存儲在棧上。 引用資料類型在被建立時,首先要在棧上給其引用(句柄)配置設定一塊記憶體,而對象的具體資訊都存儲在堆記憶體上,然後由棧上面的引用指向堆中對象的位址。

###03.01_Java語言基礎(邏輯運算符的基本用法)(掌握)

  • A:邏輯運算符有哪些
    • &,|,^,!
    • &&,||
  • B:案例示範
  • 邏輯運算符的基本用法
  • 注意事項:
    • a:邏輯運算符一般用于連接配接boolean類型的表達式或者值。
    • b:表達式:就是用運算符把常量或者變量連接配接起來的符合java文法的式子。
      • 算術表達式:a + b
      • 比較表達式:a == b(條件表達式)
  • C:結論:
  • &邏輯與:有false則false。
  • |邏輯或:有true則true。
  • ^邏輯異或:相同為false,不同為true。
  • !邏輯非:非false則true,非true則false。
    • 特點:偶數個不改變本身。

###03.02_Java語言基礎(邏輯運算符&&和&的差別)(掌握)

  • A:案例示範
    • &&和&的差別?
      • a:最終結果一樣。
      • b:&&具有短路效果。左邊是false,右邊不執行。
      • &是無論左邊是false還是true,右邊都會執行
  • B:同理||和|的差別?(學生自學)
  • C:開發中常用誰?
    • &&,||,!

###03.03_Java語言基礎(位運算符的基本用法1)(了解)

  • A:位運算符有哪些
    • &,|,^,~ ,>>,>>>,<<
  • B:案例示範
    • 位運算符的基本用法1
    • &,|,^,~ 的用法
    • &:有0則0
    • |:有1則1
    • ^:相同則0,不同則1
    • ~:按位取反

###03.04_Java語言基礎(位異或運算符的特點及面試題)(掌握)

  • A:案例示範
    • 位異或運算符的特點
    • ^的特點:一個資料對另一個資料位異或兩次,該數本身不變。
  • B:面試題:
    • 請自己實作兩個整數變量的交換 ``
      學習筆記整理-JAVA語言基礎
      學習筆記整理-JAVA語言基礎
    • 注意:以後講課的過程中,我沒有明确指定資料的類型,預設int類型。

###03.05_Java語言基礎(位運算符的基本用法2及面試題)(了解)

  • A:案例示範 >>,>>>,<<的用法:
    • <<:左移 左邊最高位丢棄,右邊補齊0
    • :右移 最高位是0,左邊補齊0;最高為是1,左邊補齊1
    • :無符号右移 無論最高位是0還是1,左邊補齊0
    • 最有效率的算出2 * 8的結果

###03.06_Java語言基礎(三元運算符的基本用法)(掌握)

  • A:三元運算符的格式
  • (關系表達式) ? 表達式1 : 表達式2;
               
  • B:三元運算符的執行流程
  • C:案例示範
    • 擷取兩個數中的最大值

###03.07_Java語言基礎(三元運算符的練習)(掌握)

  • A:案例示範
    • 比較兩個整數是否相同
  • B:案例示範
    • 擷取三個整數中的最大值

###03.08_Java語言基礎(鍵盤錄入的基本格式講解)(掌握)

  • A:為什麼要使用鍵盤錄入資料
    • a:為了讓程式的資料更符合開發的資料
    • b:讓程式更靈活一下
  • B:如何實作鍵盤錄入呢?
    • 先照格式來。
    • a:導包
      • 格式:
        • import java.util.Scanner;
      • 位置:
        • 在class上面。
    • b:建立鍵盤錄入對象
      • 格式:
        • Scanner sc = new Scanner(System.in);
    • c:通過對象擷取資料
      • 格式:
        • int x = sc.nextInt();
  • C:案例示範
    • 鍵盤錄入1個整數,并輸出到控制台。
    • 鍵盤錄入2個整數,并輸出到控制台。

###03.09_Java語言基礎(鍵盤錄入的練習1)(掌握)

  • A:案例示範
    • 鍵盤錄入練習:鍵盤錄入兩個資料,并對這兩個資料求和,輸出其結果
  • B:案例示範
    • 鍵盤錄入練習:鍵盤錄入兩個資料,擷取這兩個資料中的最大值

###03.10_Java語言基礎(鍵盤錄入的練習2)(掌握)

  • A:案例示範
    • 鍵盤錄入練習:鍵盤錄入兩個資料,比較這兩個資料是否相等
  • B:案例示範
    • 鍵盤錄入練習:鍵盤錄入三個資料,擷取這三個資料中的最大值

###03.11_Java語言基礎(順序結構語句)(了解)

  • A:什麼是流程控制語句
    • 流程控制語句:可以控制程式的執行流程。
  • B:流程控制語句的分類
    • 順序結構
    • 選擇結構
    • 循環結構
  • C:執行流程:
    • 從上往下,依次執行。
  • D:案例示範
    • 輸出幾句話看效果即可

###03.12_Java語言基礎(選擇結構if語句格式1及其使用)(掌握)

  • A:選擇結構的分類
    • if語句
    • switch語句
  • B:if語句有幾種格式
    • 格式1
    • 格式2
    • 格式3
  • C:if語句的格式1
  • if(比較表達式) {
      	語句體;
      }
               
  • D:執行流程:
    • 先計算比較表達式的值,看其傳回值是true還是false。
    • 如果是true,就執行語句體;
    • 如果是false,就不執行語句體;

###03.13_Java語言基礎(選擇結構if語句注意事項)(掌握)

  • A:案例示範
    • a:比較表達式無論簡單還是複雜,結果必須是boolean類型
    • b:if語句控制的語句體如果是一條語句,大括号可以省略,控制的離if最近的一條語句;
      • 如果是多條語句,就不能省略。建議永遠不要省略。
        學習筆記整理-JAVA語言基礎
    • c:一般來說:有左大括号就沒有分号,有分号就沒有左大括号

###03.14_Java語言基礎(選擇結構if語句格式2及其使用)(掌握)

  • A:if語句的格式2
  • if(比較表達式) {
      	語句體1;
      }else {
      	語句體2;
      }
               
  • B:執行流程:
    • 首先計算比較表達式的值,看其傳回值是true還是false。
    • 如果是true,就執行語句體1;
    • 如果是false,就執行語句體2;
  • C:案例示範
    • a:擷取兩個資料中較大的值
      學習筆記整理-JAVA語言基礎
    • b:判斷一個資料是奇數還是偶數,并輸出是奇數還是偶數
    • 注意事項:else後面是沒有比較表達式的,隻有if後面有。

###03.15_Java語言基礎(if語句的格式2和三元的互相轉換問題)(掌握)

  • A:案例示範
    • if語句和三元運算符完成同一個效果
  • B:案例示範
    • if語句和三元運算符的差別
    • 三元運算符實作的,都可以采用if語句實作。反之不成立。
    • 什麼時候if語句實作不能用三元改進呢?
      • 當if語句控制的操作是一個輸出語句的時候就不能。
      • 為什麼呢?因為三元運算符是一個運算符,運算符操作完畢就應該有一個結果,而不是一個輸出。

###03.16_Java語言基礎(選擇結構if語句格式3及其使用)(掌握)

  • A:if語句的格式3:
  • if(比較表達式1) {
      	語句體1;
      }else if(比較表達式2) {
      	語句體2;
      }else if(比較表達式3) {
      	語句體3;
      }
      ...
      else {
      	語句體n+1;
      }
               
  • B:執行流程:
    • 首先計算比較表達式1看其傳回值是true還是false,
    • 如果是true,就執行語句體1,if語句結束。
    • 如果是false,接着計算比較表達式2看其傳回值是true還是false,
    • 如果是true,就執行語句體2,if語句結束。
    • 如果是false,接着計算比較表達式3看其傳回值是true還是false,
    • 如果都是false,就執行語句體n+1。
  • C:注意事項:最後一個else可以省略,但是建議不要省略,可以對範圍外的錯誤值提示

###03.17_Java語言基礎(選擇結構if語句格式3練習)(掌握)

  • A:練習1
  • 需求:鍵盤錄入一個成績,判斷并輸出成績的等級。
      90-100 優
      80-89  良
      70-79  中
      60-69  及
      0-59   差
      ![](https://oscimg.oschina.net/oscnet/bd2d9102f4eab44d65493bd607249c845cf.jpg)
               
  • B:練習2
    • 需求:
      • 鍵盤錄入x的值,計算出y的并輸出。
      • x>=3 y = 2 * x + 1;
      • -1<x<3 y = 2 * x;
      • x<=-1 y = 2 * x - 1;

###03.18_Java語言基礎(選擇結構if語句的嵌套使用)(掌握)

  • A:案例示範
    • 需求:擷取三個資料中的最大值
    • if語句的嵌套使用。

###03.19_Java語言基礎(選擇結構switch語句的格式及其解釋)(掌握)

  • A:switch語句的格式
  • switch(表達式) {//表達式:基本資料類型可以接受byte,short,char,int;引用資料類型可以接受枚舉,String字元串(JDK1.7)
            case 值1:
      		語句體1;
      		break;
      	    case 值2:
      		語句體2;
      		break;
      	    …
      	    default:	
      		語句體n+1;
      		break;
      }
               
  • B:switch語句的格式解釋
  • C:面試題
    • byte可以作為switch的表達式嗎?
    • long可以作為switch的表達式嗎?
    • String可以作為switch的表達式嗎?
  • C:執行流程
    • 先計算表達式的值
    • 然後和case後面的比對,如果有就執行對應的語句,否則執行default控制的語句

###03.20_Java語言基礎(選擇結構switch語句的練習)(掌握)

  • A:整數(給定一個值,輸出對應星期幾)

###03.21_Java語言基礎(選擇結構switch語句的注意事項)(掌握)

  • A:案例示範
    • a:case後面隻能是常量,不能是變量,而且,多個case後面的值不能出現相同的
    • b:default可以省略嗎?
      • 可以省略,但是不建議,因為它的作用是對不正确的情況給出提示。
      • 特殊情況:
        • case就可以把值固定。
        • A,B,C,D
    • c:break可以省略嗎?
      • 最後一個可以省略,其他最好不要省略
      • 會出現一個現象:case穿透。
      • 最終我們建議不要省略
    • d:default一定要在最後嗎?
      • 不是,可以在任意位置。但是建議在最後。
    • e:switch語句的結束條件
      • a:遇到break就結束了
      • b:執行到switch的右大括号就結束了

###03.22_Java語言基礎(選擇結構switch語句練習)(掌握)

  • A:看程式寫結果:
  • int x = 2;
      int y = 3;
      switch(x){
      	default:
      		y++;
      		break;
      	case 3:
      		y++;
      	case 4:
      		y++;
      }
      System.out.println("y="+y);
               
  • B:看程式寫結果:
  • int x = 2;
      int y = 3;
      switch(x){
      	default:
      		y++;
      	case 3:
      		y++;
      	case 4:
      		y++;
      }
      System.out.println("y="+y);
               

###03.23_Java語言基礎(選擇結構if語句和switch語句的差別)(掌握)

  • A:總結switch語句和if語句的各自使用場景
  • switch建議判斷固定值的時候用
  • if建議判斷區間或範圍的時候用
  • B:案例示範
    • 分别用switch語句和if語句實作下列需求:
      • 鍵盤錄入月份,輸出對應的季節
        學習筆記整理-JAVA語言基礎

控制語句:

break的使用場景:隻能在switch和循環中

continue的使用場景:隻能在循環中 。終止本次循環,繼續下次循環

return的使用場景:傳回的意思,用來傳回方法

###04.01_Java語言基礎(循環結構概述和for語句的格式及其使用)

  • A:循環結構的分類
    • for,while,do...while
  • B:循環結構for語句的格式:
  • for(初始化表達式;條件表達式;循環後的操作表達式) {
      	循環體;
      }
               
  • C執行流程:
    • a:執行初始化語句
    • b:執行判斷條件語句,看其傳回值是true還是false
      • 如果是true,就繼續執行
      • 如果是false,就結束循環
    • c:執行循環體語句;
    • d:執行循環後的操作表達式
    • e:回到B繼續。
  • D:案例示範
    • 在控制台輸出10次"helloworld"

###04.02_Java語言基礎(循環結構for語句的練習之擷取資料)

  • A:案例示範
    • 需求:請在控制台輸出資料1-10
    • 需求:請在控制台輸出資料10-1
  • B:注意事項
    • a:判斷條件語句無論簡單還是複雜結果是boolean類型。
    • b:循環體語句如果是一條語句,大括号可以省略;如果是多條語句,大括号不能省略。建議永遠不要省略。
    • c:一般來說:有左大括号就沒有分号,有分号就沒有左大括号

###04.03_Java語言基礎(循環結構for語句的練習之求和思想)

  • A:案例示範
    • 需求:求出1-10之間數
      學習筆記整理-JAVA語言基礎
      據之和
  • B:學生練習
    • 需求:求出1-100之間偶數和
      學習筆記整理-JAVA語言基礎
    • 需求:求出1-100之間奇數和

###04.04_Java語言基礎(循環結構for語句的練習之水仙花)

  • A:案例示範
    • 需求:在控制台輸出所有的”水仙花數”
    • 所謂的水仙花數是指一個三位數,其各位數字的立方和等于該數本身。
    • 舉例:153就是一個水仙花數。
    • 153 = 111 + 555 + 333 = 1 + 125 + 27 = 153

###04.05_Java語言基礎(循環結構for語句的練習之統計思想)

  • A:案例示範
    • 需求:統計”水仙花數”共有多少個 `int count=0; for (int i=100;i<=999;i++){
      int gewei=i%10;
        int shiwei=i/10%10;
        int baiwei=i/10/10%10;
        if (Math.pow(gewei,3)+Math.pow(shiwei,3)+Math.pow(baiwei,3)==i){
            count++;
            System.out.println(i);
        }
                 
      } System.out.println(count);`

###04.06_Java語言基礎(循環結構while語句的格式和基本使用)

  • A:循環結構while語句的格式:
  • while循環的基本格式:
      while(判斷條件語句) {
      	循環體語句;
      }
      
      完整格式:
      
      初始化語句;
      while(判斷條件語句) {
      	 循環體語句;
      	 控制條件語句;
      }
               
  • B:執行流程:
    • a:執行初始化語句
    • b:執行判斷條件語句,看其傳回值是true還是false
      • 如果是true,就繼續執行
      • 如果是false,就結束循環
    • c:執行循環體語句;
    • d:執行控制條件語句
    • e:回到B繼續。
  • C:案例示範
    • 需求:請在控制台輸出資料1-10

###04.07_Java語言基礎(循環結構while語句的練習)

  • A:求和思想
    • 求1-100之和
  • B:統計思想
    • 統計”水仙花數”共有多少個

###04.08_Java語言基礎(循環結構do...while語句的格式和基本使用)

  • A:循環結構do...while語句的格式:
  • do {
      	循環體語句;
      }while(判斷條件語句);
      
      完整格式;
      初始化語句;
      do {
      	循環體語句;
      	控制條件語句;
      }while(判斷條件語句);
               
  • B:執行流程:
    • a:執行初始化語句
    • b:執行循環體語句;
    • c:執行控制條件語句
    • d:執行判斷條件語句,看其傳回值是true還是false
      • 如果是true,就繼續執行
      • 如果是false,就結束循環
    • e:回到b繼續。
  • C:案例示範
    • 需求:請在控制台輸出資料1-10

###04.09_Java語言基礎(循環結構三種循環語句的差別)

  • A:案例示範
    • 三種循環語句的差別:
    • do...while循環至少執行一次循環體。
    • 而for,while循環必須先判斷條件是否成立,然後決定是否執行循環體語句。
  • B:案例示範
    • for循環和while循環的差別:
      學習筆記整理-JAVA語言基礎
      • A:如果你想在循環結束後,繼續使用控制條件的那個變量,用while循環,否則用for循環。不知道用誰就用for循環。因為變量及早的從記憶體中消失,可以提高記憶體的使用效率。

###04.10_Java語言基礎(循環結構注意事項之死循環)

  • A:一定要注意控制條件語句控制的那個變量的問題,不要弄丢了,否則就容易死循環。
  • B:兩種最簡單的死循環格式
    • while(true){...}
    • for(;;){...}

###04.11_Java語言基礎(循環結構循環嵌套輸出4行5列的星星)

  • A:案例示範
    • 需求:請輸出一個4行5列的星星(*)圖案。
    • 如圖:
        	*****
        	*****
        	*****
        	*****
        	`for (int i=1;i<=4;i++){
        System.out.print(i);
        for (int j=1;j<=5;j++){
            System.out.print(j);
        }
        System.out.println();
                 
      }` 注意: System.out.println("");和System.out.print("");的差別
  • B:結論:
    • 外循環控制行數,内循環控制列數

###04.12_Java語言基礎(循環結構循環嵌套輸出正三角形)

  • A:案例示範
  • 需求:請輸出下列的形狀
      *
      **
      ***
      ****
      *****
      `for (int i=1;i<=4;i++){
          System.out.print(i);
          for (int j=1;j<=i;j++){
              System.out.print(j);
          }
          System.out.println();
      }`
               

###04.13_Java語言基礎(循環結構九九乘法表)

  • A:案例示範
    • 需求:在控制台輸出九九乘法表。
  • B:代碼優化
  • 注意:
      '\x' x表示任意,\是轉義符号,這種做法叫轉移字元。
      
      '\t'	tab鍵的位置
      '\r'	回車
      '\n'	換行
      '\"'
      '\''
               

###04.14_Java語言基礎(控制跳轉語句break語句)

  • A:break的使用場景
    • 隻能在switch和循環中

###04.15_Java語言基礎(控制跳轉語句continue語句)

  • A:continue的使用場景
    • 隻能在循環中

###04.16_Java語言基礎(控制跳轉語句标号)

  • 标号:标記某個循環對其控制
  • 标号組成規則:其實就是合法的辨別符

    outer: for (int i=1;i<=9;i++){ inner: for (int j=1;j<=i;j++){ System.out.print(j+"*"+i+"="+(i*j)+'\t'); break outer; } System.out.println(); }

###04.17_Java語言基礎(控制調整語句練習)

  • A:練習題
  • for(int x=1; x<=10; x++) {
      	if(x%3==0) {
      		//在此處填寫代碼
      	}
      	System.out.println(“Java基礎班”);
      }
      
      我想在控制台輸出2次:“Java基礎班“
      我想在控制台輸出7次:“Java基礎班“
      我想在控制台輸出13次:“Java基礎班“
      ![](https://oscimg.oschina.net/oscnet/efc0d344465f87a8e650d1e4d0930f59f29.jpg)
               

###04.18_Java語言基礎(控制跳轉語句return語句)

  • A:return的作用
    • 傳回
    • 其實它的作用不是結束循環的,而是結束方法的。
  • B:案例示範
    • return和break以及continue的差別?
    • return是結束方法
    • break是跳出循環
    • continue是終止本次循環繼續下次循環

###04.19_Java語言基礎(方法概述和格式說明)

  • A:為什麼要有方法
    • 提高代碼的複用性
  • B:什麼是方法
    • 完成特定功能的代碼塊。
  • C:方法的格式
  • 修飾符 傳回值類型 方法名(參數類型 參數名1,參數類型 參數名2...) {
      	方法體語句;
      	return 傳回值; 
      } 
               
  • D:方法的格式說明
    • 修飾符:目前就用 public static。後面我們再詳細的講解其他的修飾符。
    • 傳回值類型:就是功能結果的資料類型。
    • 方法名:符合命名規則即可。友善我們的調用。
    • 參數:
      • 實際參數:就是實際參與運算的。
      • 形式參數;就是方法定義上的,用于接收實際參數的。
    • 參數類型:就是參數的資料類型
    • 參數名:就是變量名
    • 方法體語句:就是完成功能的代碼。
    • return:結束方法的。
    • 傳回值:就是功能的結果,由return帶給調用者。

###04.20_Java語言基礎(方法之求和案例及其調用)

  • A:如何寫一個方法
    • 1,明确傳回值類型
    • 2,明确參數清單
  • B:案例示範
    • 需求:求兩個資料之和的案例
  • C:方法調用圖解

###04.21_Java語言基礎(方法的注意事項)

  • A:方法調用(有具體傳回值)
    • a:單獨調用,一般來說沒有意義,是以不推薦。
    • b:輸出調用,但是不夠好。因為我們可能需要針對結果進行進一步的操作。
    • c:指派調用,推薦方案。
  • B:案例示範
    • a:方法不調用不執行
    • b:方法與方法是平級關系,不能嵌套定義
    • c:方法定義的時候參數之間用逗号隔開
    • d:方法調用的時候不用在傳遞資料類型
    • e:如果方法有明确的傳回值,一定要有return帶回一個值

###04.22_Java語言基礎(方法的練習)

  • A:案例示範
    • 需求:鍵盤錄入兩個資料,傳回兩個數中的較大值
  • B:案例示範
    • 需求:鍵盤錄入兩個資料,比較兩個數是否相等

###04.23_Java語言基礎(方法之輸出星形及其調用)

  • A:案例示範
    • 需求:根據鍵盤錄入的行數和列數,在控制台輸出星形
  • B:方法調用:(無傳回值,void)
    • 單獨調用
    • 輸出調用(錯誤)
    • 指派調用(錯誤)

###04.24_Java語言基礎(方法的練習)

  • A:案例示範
    • 需求:根據鍵盤錄入的資料輸出對應的乘法表

###04.25_Java語言基礎(方法重載概述和基本使用)

  • A:方法重載概述
    • 求和案例
      • 2個整數
      • 3個整數
      • 4個整數
  • B:方法重載:
    • 在同一個類中,方法名相同,參數清單不同。與傳回值類型無關。
    • 參數清單不同:
      • A:參數個數不同
      • B:參數類型不同
      • C:參數的順序不同(算重載,但是在開發中不用)

###04.26_Java語言基礎(方法重載練習比較資料是否相等)

  • A:案例示範
    • 需求:比較兩個資料是否相等。
    • 參數類型分别為兩個int類型,兩個double類型,并在main方法中進行測試
    ###05.26_Java語言基礎(數組) 一個數組的記憶體圖
    學習筆記整理-JAVA語言基礎
    三個引用兩個數組
    學習筆記整理-JAVA語言基礎

版權聲明:本文為CSDN部落客「weixin_34043301」的原創文章,遵循CC 4.0 BY-SA版權協定,轉載請附上原文出處連結及本聲明。

原文連結:https://blog.csdn.net/weixin_34043301/article/details/92398241