专注Java教育14年 全国咨询/投诉热线:444-1124-454
赢咖4LOGO图
始于2009,口口相传的Java黄埔军校
首页 学习攻略 Java学习 Java传参方式的详细介绍

Java传参方式的详细介绍

更新时间:2022-08-17 08:08:36 来源:赢咖4 浏览1395次

有些小伙伴对Java传参方式还不是很了解,那么就由赢咖4小编来告诉大家。

传参方式

程序设计语言将实参传递给方法(或函数)的方式分为两种:Java传值和引用传值

值传递

方法接收的是实参值的拷贝,会创建副本。

引用传递

方法接收的直接是实参所引用的对象在堆中的地址,不会创建副本,对形参的修改将影响到实参。

尝试证明JAVA仅存在值传递这一种传参方式

基本数据类型

	public static void main(String[] args) {
        int a = 129;
        int b = 130;
        intSwap(a, b);
        System.out.println("a = " + a);
        System.out.println("b = " + b);
    }
	public static void intSwap(int value1, int value2) {
        int temp = value1;
        value1 = value2;
        value2 = temp;
    }	
	// 运行结果:a = 129;b = 130;

基本数据类型的引用类型

	public static void main(String[] args) {
        int a = 129;
        int b = 130;
        intSwap(a, b);
        System.out.println("a = " + a);
        System.out.println("b = " + b);
    }
	public static void integerSwap(Integer value1, Integer value2) {
        Integer temp = value1;
        value1 = value2;
        value2 = temp;
    }	
	// 运行结果:a = 129;b = 130;

对象类型(与数组类型类似)

	public static void main(String[] args) {
        TestClass a = new TestClass("a", 129);
        TestClass b = new TestClass("b", 130);
        objSwap(a, b);
        System.out.println(a);
        System.out.println(b);
    }
	private static void objSwap(TestClass value1, TestClass value2) {
        TestClass temp = value1;
        value1 = value2;
        value2 = temp;   
        System.out.println(value1);
        System.out.println(value2);
        value2.value = 0;
    }    
    static class TestClass {
        public String key;
        public Integer value;        
        public TestClass(String key, Integer value) {
            this.key = key;
            this.value = value;
        }        
        @Override
        public String toString() {
            return key + " = " + value;
        }
    }
	// 运行结果:a = 0;b = 130;

以上就是关于“Java传参方式的详细介绍”的介绍,大家如果对此比较感兴趣,可以关注一下赢咖4的Java教程,里面有更丰富的知识等着大家去学习,希望对大家能够有所帮助哦。

提交申请后,顾问老师会电话与您沟通安排学习

免费课程推荐 >>
技术文档推荐 >>