import org.junit.Test; public class Demo { public int test = 1; @Test public void test2(){ /* 數組、對象(String等除外)作為參數傳遞,是引用傳遞, 引用傳遞是改變原來屬性的值的,如例1、例2 */ System.out.println("數組傳參:"); int[] arr = {5,1,3,6,4,5,6,7,8,9}; System.out.println("傳參前arr[2] = "+arr[2]); changeValue(arr); System.out.println("傳參后arr[2] = "+arr[2]); System.out.println("*************************************"); System.out.println("對象傳參:"); Demo demo = new Demo(); System.out.println("傳參前demo.test = "+demo.test); changeValue(demo); System.out.println("傳參后demo.test = "+demo.test); System.out.println("*************************************"); System.out.println("String傳參:"); String str = "沙比"; System.out.println("傳參前str = "+str); changeValue(str); System.out.println("傳參后str = "+str); System.out.println("*************************************"); System.out.println("int基本數據類型傳參:"); int i = 0; System.out.println("傳參前i = "+i); changeValue(i); System.out.println("傳參后i = "+i); } public static void changeValue(int[] arr){ arr[2] = 5; } public static void changeValue(String str){ str = "傻逼"; } public static void changeValue(Demo demo){ demo.test = 2; } public static void changeValue(int i){ i = 1; } }