java中方法传参形式

导读:本篇文章讲解 java中方法传参形式,希望对大家有帮助,欢迎收藏,转发!站点地址:www.bmabk.com

成员方法传参形式:

1.基本数据类型:传递的是值

public class Object03 {
    public static void main(String[] args) {
        AA aa = new AA();
        int a = 10,b= 20;
        System.out.println("main中a:"+a+",b:"+b);
        aa.swap(a, b);
        System.out.println("main中调用swap后a:"+a+",b:"+b);
        
    }

}
class AA {
    public void swap(int a,int b) {
        System.out.println("swap中a:"+a+",b:"+b);
        int tmp = a;
        a = b;
        b = tmp;
        System.out.println("swap中交换后:"+a+",b:"+b);
    }
}

jvm内存图,如下图所示:

vip

运行结果:

java中方法传参形式

2.引用数据类型:传递的是地址

public class Obejct04 {
    public static void main(String[] args) {
        BB bb = new BB();
        int[] arr = {0,2,3};
        bb.AlertArr(arr);
        
        for(int i=0;i<arr.length;i++) {
            System.out.print(arr[i]+" ");
        }
        System.out.println();
    }
}

class BB {
    public void AlertArr(int[] arr) {
        arr[0] = 200;
        
        for(int i = 0;i<arr.length;i++) {
            System.out.print(arr[i]+" ");
        }
        System.out.println();
    }
}

jvm内存如下图所示:

vip

 运行结果:

java中方法传参形式

3.对象传递:与2类似

public class Object05 {
    public static void main(String[] args) {
        Person p = new Person();
        B bb = new B();
        p.name = "jack";
        p.age = 20;
        bb.PersonTest(p);
        System.out.println("Person的age:"+ p.age+",name:"+p.name);
    }

}
class Person {
    String name;
    int age;
}
class B {
    
    public void PersonTest(Person p) {
        p.age = 200;
    }
}

jvm内存图如图所示:

vip

运行结果如下:

java中方法传参形式

 

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/98993.html

(0)
小半的头像小半

相关推荐

极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!