22_數組作爲方法參數和返回值

第二十二章 數組作爲方法參數和返回值

作者:張子默

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;
    		}
    	
    	}
    

在這裏插入圖片描述

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章