java传递代码 java传递函数

java值传递和地址传递

JAVA传递参数有两种方式:值传递和引用传递

成都网站建设、网站设计的关注点不是能为您做些什么网站,而是怎么做网站,有没有做好网站,给成都创新互联公司一个展示的机会来证明自己,这并不会花费您太多时间,或许会给您带来新的灵感和惊喜。面向用户友好,注重用户体验,一切以用户为中心。

值传递是传递数据:如基本数据类型都是值传递

引用传递是把形参和实参的指针指向了堆中的同一对象,对象的引用和数组的引用。

实参,Java的基本数据类型,如int,double等在函数的参数传递时,传递的是副本。String也属于这一范畴。

形参,而如果是对象,则传递的是引用。

如下代码实例:

public class MainActivity extends Activity {

@Override

public void onCreate(Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

person p = new person();

p.name = "ken";

p.age = "12";

reset(p); // 传递的是p的指针地址,方法里面在对p的属性进行修改,方法结束后影响依然存在。

String name = p.name;

String age = p.age;

System.out.println(name + age);

// name=gg,age=223

setContentView(R.layout.main);

}

private void reset(person ap) {

ap.name="gg";

ap.age="223";

}

class person {

String name;

String age;

public String getName() {

return name;

}

public void setName(String name) {

this.name = name;

}

public String getAge() {

return age;

}

public void setAge(String age) {

this.age = age;

}

}

Java代码的参数传递问题,不用修改代码

java只传值,不传参!这点和c/c++完全不一样。你可以尝试输出方法里的变量内存地址于main里的变量地址,你会发现方法参数是对传进来变量的一个值的复制,并不是同一个变量。所以如果要修改的话,可以通过static修饰符标记为全局变量实现

Java代码传递值的问题

public static void main(String[] args) {

int a[][] = new int[4][5];//定义4*5的二维数组

int i,j,k = 0;

for(i = 0;i 4;i++)

for(j = 0;j 5;j++){

a[i][j] = k;//两层循环给数组赋值,赋值顺序:i=0时,j从0到4,a[0][0]=0,a[0][1]=1,a[0][2]=2,a[0][3]=3,a[0][4]=4到此外层完成了一次循环,

k++;//i=1时,j从0到4,a[1][0]=5,a[1][1]=6,a[1][2]=7,a[1][3]=8,a[1][4]=9外层完成第二次循环。外出后两次循环以此类推。赋值完成是k值等于4*5-1=19

}

for(i = 0;i 4;i++){

for(j = 0;j 5;j++)

System.out.print(a[i][j]);//循环打印,每次当j=4时换行

System.out.println();

}

}

关于Java的方法参数传递问题,下面的是源代码

public class ObjectArg

{

public String name=" ";

public int age=0;

public String sex=" ";

public void printObjInfo()

{

System.out.println("\t名字:"+this.name);

System.out.println("\t性别:"+this.sex);

System.out.println("\t年龄:"+this.age);

}

}

public class ArgDemo 

{

static int intArg=10;

static ObjectArg objectArg=new ObjectArg();

public static void main(String[] args)

{

changeIntArg(intArg);

System.out.println("传递给方法的int类型参数:"+intArg);

System.out.println("intArg="+intArg);

objectArg.age=29;

objectArg.name="李经理";

objectArg.sex="男";

changeOjbectArg(objectArg);

System.out.println("传递给方法的对象");

printObjInfo(objectArg);

}

public static void changeIntArg(int arg) 

{

System.out.println("=========实参未改变=========");

System.out.println("changeIntArg()方法开始执行");

System.out.println("int类型参数arg="+arg);

System.out.println("将参数值除以2");

arg=arg/2;

System.out.println("arg="+arg);

}

private static void changeOjbectArg(ObjectArg arg)

{

System.out.println("=========实参被改变=========");

System.out.println("changeOjbectArg()方法开始执行");

System.out.println("输出对象参数:");

arg.printObjInfo();

arg.name="王经理";

arg.sex="女";

arg.age=20;

System.out.println("修改后的对象参数:");

arg.printObjInfo();

}

}

java 引用传递代码

19 public static void fun(Message temp){

20 temp.setNum (200) ;

21 }

自定义对象,传递参数时,是传“址”的 。。。。。。。。。。

16 fun(msg) ; 就是调用静态函数 fun、并传递参数msg————


网站名称:java传递代码 java传递函数
网页URL:http://myzitong.com/article/dodigjj.html