//新建一个类,命名为Calc package com.zlm; public class Calc { //构造一个方法,方法名为add void add(int x){ //定义了一个int类型的参数x x += 1; //表示x = x + 1 System.out.println("x=" +x);//输出x的值 } } ********************************************************** **********************************************************package com.zlm; public class Main { public static void main(String[] args) { int a = 2; //新建一个int类型的变量a,给a赋值为2, Calc c = new Calc();//新建一个Calc类型的变量c,给c赋值new Calc() c.add(a); /*因为add为Calc类中的方法,所以要返回到Calc中, 并把a的值传给x,执行add方法,输出x */ System.out.println("a=" +a);//输出a的值// } } 输出结果:自我分析:一开始一直在想:为什么x的值和a不相等?为什么a=2而不是a=3?
老师讲解后,有了很清晰的认识,c.add(a)这一步只是a把它本身的值传给了x.
x只在Calc类中执行运算,在add方法中执行x+=1之后,x的值变成了3,最后输出x的值.
a只给x进行了传值,它俩没有其他的联系,所以a的值还是原来的2,没有任何的变化。
JAVA参数传值
最新推荐文章于 2024-09-19 13:19:42 发布
这篇博客通过一个简单的Java代码示例,解释了Java中参数传递的过程。在`Calc`类的`add`方法中,参数`x`接收到`Main`类中`a`的值,但`x`的修改不会影响`a`的原始值。作者在理解了老师讲解后,明白了参数传值的原理,指出`c.add(a)`仅将`a`的值传递给`x`,`x`的改变不影响`a`,因此`a`的值始终保持为2。
摘要由CSDN通过智能技术生成