/*
Java中参数传递问题:
基本类型:形式参数的改变对实际参数没有影响。
引用类型:形式参数的改变直接影响实际参数。
Java中只有值传递,引用类型传递的是地址值。
*/class ArgsDemo
{
public static void main(String[] args)
{
int a = 10;
int b = 20;
System.out.println("a:"+a+",b:"+b);//a:10,b:20
change(a,b);
System.out.println("a:"+a+",b:"+b);//a:20,b:40 -- 问题 a:10,b:20
int[] arr = {1,2,3,4,5};
change(arr);
//{1,4,3,8,5}
System.out.println(arr[1]);//4
}
public static void change(int a,int b)
{
System.out.println("a:"+a+",b:"+b);//a:10,b:20
a = b; //a=20
b = a + b; //b=40
System.out.println("a:"+a+",b:"+b);//a:20,b:40
//return;
}
public static void change(int[] arr) //{1,2,3,4,5} -- {1,4,3,8,5}
{
for(int x=0; x<arr.length; x++)
{
//如何元素的值是偶数,那么,就把值变为以前的2倍。
if(arr[x]%2==0)
{
arr[x]*=2;
}
}
}
}
|
|