第二十二章 數組作爲方法參數和返回值
作者:張子默
1、數組作爲方法參數
以前的方法中我們學習了方法的參數和返回值,但是使用的都是基本數據類型。那麼作爲引用類型的數組能否作爲方法的參數進行傳遞呢,當然是可以的。
-
數組作爲方法參數傳遞,傳遞的參數是數組內存的地址。
/* 數組可以作爲方法的參數 當調用方法的時候,向方法的小括號進行傳參,傳遞進去的其實是數組的地址值 */ public class Demo14ArrayParam { public static void main(String[] args) { int[] array = {10, 20, 30, 40, 50}; System.out.println(array); //地址值 printArray(array); //傳遞進去的就是array當中保存的地址值 System.out.println("=====AAA====="); printArray(array); System.out.println("=====BBB====="); printArray(array); } /* 三要素 返回值類型:只是進行打印而已,不需要進行計算,也沒有結果,用void 方法名稱:printArray 參數列表:必須給我數組,我才能打印其中的元素。int[] array */ public static void printArray(int[] array) { System.out.println(array); //地址值 for (int i=0; i<array.length; i++) { System.out.println(array[i]); } } }
2、數組作爲方法的返回值
-
數組作爲方法的返回值,返回的是數組的內存地址
/* 一個方法可以有0、1、多個參數;但是隻能有0或者1個返回值,不能有多個返回值 如果希望一個方法當中產生了多個結果數據進行返回,怎麼辦? 解決方案,使用一個數組作爲返回值類型即可 任何數據類型都能作爲方法的參數類型,或者返回值類型 數組作爲方法的參數,傳遞進去的其實是數組的地址值 數組作爲方法的返回值,返回的其實也是數組的地址值 總結:方法的參數爲基本類型時,傳遞的是數據值,方法的參數爲引用類型時,傳遞的是地址值 */ public class Demo15ArrayReturn { public static void main(String[] args) { int[] result = calculate(10, 20, 30); System.out.println("main方法接收到的返回值數組是:"); System.out.println(result); System.out.println("總和:" + result[0]); System.out.println("總和:" + result[1]); } public static int[] calculate(int a, int b, int c) { int sum = a + b + c; //總和 int avg = sum / 3; //平均數 //兩個結果都希望進行返回 //需要一個數組,也就是一個塑料兜,數組可以保存多個結果 //int[] array = {sum, avg}; int[] array = new int[2]; array[0] = sum; //總和 array[1] = avg; //平均數 System.out.println("calculate方法內部數組是:"); System.out.println(array); //地址值 return array; } }