JAVA参数在方法中的传递过程

在Java语言中,参数传递时,一般存在两种参数传递的规则
1.按值传递
使用该方式传递的参数,参数原始的值不发生变化
适用范围:八种基本数据类型和String
String也是传递的地址,但是String对象一旦被改变,就是生成新的对象
2.按地址值传递
使用该方式传递的参数,在方法内部修改参数的值时,参数原始的值发生改变
适用范围:除String以外的所有复合数据类型,包括数组.类和接口

测试:

public static void main(String[] args) {
        int a = 0;
        int b [] = {1,2,3};
        String c = "str";
        System.out.println("=====参数传递前====");
        System.out.println("int a = " + a);
        System.out.println("int b[] = " + b[0]);
        System.out.println("String c = " + c);

        //方法调用,参数传递
        change(a, b, c);

        System.out.println("=====参数传递后====");
        System.out.println("int a = " + a);
        System.out.println("int b[] = " + b[0]);
        System.out.println("String c = " + c);
    }

    public static void change(int i, int [] j, String k){
        i = i + 9;
        j[0] = j[0] + 9;
        k = "String";
    }

结果:

=====参数传递前====

int a = 0
int b[] = 1
String c = str
=====参数传递后====
int a = 0
int b[] = 10
String c = str

这里写图片描述

这里写图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值