Java参数传递实现代码及过程图解

一.下面是一段代码

Java参数传递实现代码及过程图解_第1张图片

二.运行的结果为

Java参数传递实现代码及过程图解_第2张图片

三.过程分析

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

Java参数传递实现代码及过程图解_第3张图片

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

Java参数传递实现代码及过程图解_第4张图片

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

Java参数传递实现代码及过程图解_第5张图片

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

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

Java参数传递实现代码及过程图解_第6张图片

*上文中的代码如下:

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;
}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

你可能感兴趣的:(Java参数传递实现代码及过程图解)