Java笔记——方法参数传递

总结
  • java的基本数据类型是传值调用,对象引用类型是传引用。

  • 当传值调用时,改变的是形参的值,并没有改变实参的值,实参的值可以传递给形参,但是,这个传递是单向的,形参不能传递回实参。

  • 当引用调用时,如果参数是对象,无论对对象做了何种操作,都不会改变实参对象的引用,但是如果改变了对象的内容,就会改变实参对象的内容。

    public static void main(String[] args) {
    
           int[] arr = {1,2,3,4};
           System.out.println(arr[2]);			// 输出结果 3
           method_1(arr);
           System.out.println(arr[2]);			// 输出结果 10
    
       }
    
       public static void method_1(int[] arr) {
           arr[2] = 10;
    
       }
    
  • 包装类作为函数的形参时,和其对应的基本类型作为形参效果一样,都是传递值,对于该对象本身并不会改变。

  • 包装类的值都是final 不可变的,对于++b 或者b++ ,只是新创建了一个对象,然后把引用传给了原对象句柄,在函数中操作,只是形参的临时句柄改变了指向,实参的句柄还是指向原来的对象。所以实参的值不会改变。

public static void main(String[] args) {

        int a = 10;
        Integer b = 20;

        method_1(a,b);
        System.out.println(b);		// 输出结果仍然是20
    }

    public static void method_1(int a,Integer b) {
        b++;

    }
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值