1. 程式人生 > >java之引數傳遞問題

java之引數傳遞問題

同C語言中的函式引數類似。一般的形式引數不能改變實際引數的數值

陣列名作為形式引數可以改變實際引數的數值,可以將java中的陣列名和C語言中的指標相對比,更好的學習


class CanShu{
	
		public static void main(String[] args){
			int a = 10;
			int b = 20;
			System.out.println("a:"+a);
			System.out.println("b:"+b);				
			change(a,b);		//不能改變實參的數值
			System.out.println("a:"+a);
			System.out.println("b:"+b);
			System.out.println("-----------------------");
			
			int[] arr = {1,2,3,4,5};
			for(int x = 0; x <arr.length;x++)
				System.out.print(arr[x]+"  ");
			System.out.println();
			
			change(arr);		//用陣列可以作為形參,可以改變實參
			for(int x = 0; x <arr.length;x++)
				System.out.print(arr[x]+"  ");			
		}
		
		//用變數傳遞引數
		public static void change(int a,int b){
			a = b;
			b = a + b;
		}
		
		public static void change(int[] arr){
			for(int x = 0; x <arr.length;x++){
				arr[x] ++;
			}	
		}
}