標籤:
1:方法(掌握)(1)方法:就是完成特定功能的代碼塊。 注意:在很多語言裡面有函數的定義,而在Java中,函數被稱為方法。(2)格式: 修飾符 傳回值類型 方法名(參數類型 參數名1,參數類型 參數名2...) { 方法體語句; return 傳回值; } 修飾符:目前就用 public static。後面再詳細講解其他修飾符 傳回值類型:就是功能結果的資料類型 方法名:就是起了一個名字,方便我們調用該方法。 參數類型:就是參數的資料類型 參數名:就是變數 參數分類: 實參:實際參與運算的資料 形參:方法上定義的,用於接收實際參數的變數 方法體語句:就是完成功能的代碼塊 return:結束方法 傳回值:就是功能的結果,由return帶給調用者。(3)兩個明確: 傳回值類型:結果的資料類型 參數列表:參數的個數及對應的資料類型(4)方法調用 A:有明確傳回值的方法 a:單獨調用,沒有意義 b:輸出調用,不是很好,因為我可能需要不結果進行進一步的操作。但是講課一般我就用了。 c:賦值調用,推薦方案 B:void類型修飾的方法 a:單獨調用(5)案例: A:求和方案 B:擷取兩個數中的較大值 C:比較兩個資料是否相同 D:擷取三個數中的最大值 E:輸出m行n列的星形 F:輸出nn乘法表
(6)方法的注意事項 A:方法不調用不執行 B:方法之間是平級關係,不能嵌套定義 C:方法定義的時候,參數是用,隔開的 D:方法在調用的時候,不用在傳遞資料類型 E:如果方法有明確的傳回值類型,就必須有return語句返回。
(7)方法重載 在同一個類中,方法名相同,參數列表不同。與傳回值無關。 參數列表不同: 參數的個數不同。 參數的對應的資料類型不同。(8)方法重載案例 不同的類型的多個同名方法的比較。
方法調用圖解:
2:數組(掌握)(1)數組
:儲存同一種資料類型的多個元素的容器。(2)特點:每一個元素都有編號,從0開始,最大編號是長度-1。 編號的專業叫法:索引(3)定義格式 A:資料類型[] 數組名; B:資料類型 數組名[]; 推薦是用A方式,B方法就忘了吧。 但是要能看懂(4)數組的初始化Java中的數組必須先初始化,然後才能使用。所謂初始化:就是為數組中的數組元素分配記憶體空間,並為每個數組元素賦值。
數組的初始化方式: A:動態初始化 只給長度,系統給出預設值 舉例:int[] arr = new int[3]; B:靜態初始化 給出值,系統決定長度 舉例:int[] arr = new int[]{1,2,3}; 簡化版:int[] arr = {1,2,3}; 注意事項:不要同時動態和靜態進行 如下格式: int[] arr = new int[3]{1,2,3}; //錯誤(5)Java的記憶體配置 A:棧 儲存局部變數 B:堆 儲存所有new出來的 C:方法區(物件導向部分詳細講解) D:本地方法區(系統相關) E:寄存器(CPU使用) 注意: a:局部變數 在方法定義中或者方法聲明上定義的變數。 b:棧記憶體和堆記憶體的區別 棧:資料使用完畢,就消失。 堆:每一個new出來的東西都有地址 每一個變數都有預設值 byte,short,int,long 0 float,double 0.0 char ‘\u0000‘ boolean false 參考型別 null 資料使用完畢後,在記憶體回收行程閒置時候回收。
(6)數組記憶體配置圖 A:一個數組(略) B:二個數組 C:三個數組(兩個棧變數指向同一個堆記憶體)(7)數組的常見操作 A:遍曆 方式1: public static void printArray(int[] arr) { for(int x=0; x<arr.length; x++) { System.out.println(arr[x]); } } 方式2: public static void printArray(int[] arr) { System.out.print("["); for(int x=0; x<arr.length; x++) { if(x == arr.length-1) { System.out.println(arr[x]+"]"); }else { System.out.print(arr[x]+", "); } } } B:最值 最大值: public static int getMax(int[] arr) { int max = arr[0]; for(int x=1; x<arr.length; x++) { if(arr[x] > max) { max = arr[x]; } } return max; } 最小值: public static int getMin(int[] arr) { int min = arr[0]; for(int x=1; x<arr.length; x++) { if(arr[x] < min) { min = arr[x]; } } return min; } C:逆序 方式1: public static void reverse(int[] arr) { for(int x=0; x<arr.length/2; x++) { int temp = arr[x]; arr[x] = arr[arr.length-1-x]; arr[arr.length-1-x] = temp; } } 方式2: public static void reverse(int[] arr) { for(int start=0,end=arr.length-1; start<=end; start++,end--) { int temp = arr[start]; arr[start] = arr[end]; arr[end] = temp; } } D:查表 public static String getString(String[] strArray,int index) { return strArray[index]; } E:基本尋找 方式1: public static int getIndex(int[] arr,int value) { for(int x=0; x<arr.length; x++) { if(arr[x] == value) { return x; } } return -1; } 方式2: public static int getIndex(int[] arr,int value) { int index = -1; for(int x=0; x<arr.length; x++) { if(arr[x] == value) { index = x; break; } } return index; }
Java基礎班學習筆記(5)