Java中的参数传递

我也是小白,可能存在错误,各位倘若看到一定要带思考去阅读。

一.下面是一段代码


二.运行的结果为


三.过程分析

1.初始时,栈中有main方法与change方法,在main方法中各个元素进行了初始化。

2.之后执行了change方法,实参值传递到形参中。


3.在change方法中进行了相关操作。

 4.查看main中各元素的值。

 i为1、str为hello、b为200、arr[0]为2、my.a为11



*上文中的代码如下:

package cn.yang37.zother.example;

import java.lang.reflect.Array;
import java.util.Arrays;

/**
* @Author Yiang37
* @Date 2020/4/9 21:42
* Description:
* 参数传递机制
*/
public class ParameterPassing {
public static void main(String[] args) {
int i = 1;
String str = "yang";
Integer num = 200;
int[] arr = {1, 2, 3, 4, 5};
MyData my = new MyData();

change(i, str, num, arr, my);
System.out.println(i);
System.out.println(str);
System.out.println(num);
System.out.println(Arrays.toString(arr));
System.out.println(my.a);
}

public static void change(int j, String s, Integer n, int[] a, MyData m) {
j += 1;
s += "world";
n += 1;
a[0] += 1;
m.a += 1;
}

}

class MyData {
int a = 10;
}
 
 
原文地址:https://www.cnblogs.com/yang37/p/12670493.html