java字符串参数传递_java参数传递之值传递和引用传递

本文详细介绍了Java中的参数传递机制,包括值传递和引用传递。在值传递中,方法内部的修改不会影响原始数据,而引用传递则会改变原始对象的值,除非涉及到不可变对象如String。通过示例代码,阐述了基本数据类型包装类、Integer对象以及StringBuilder对象在方法调用中的行为差异。
摘要由CSDN通过智能技术生成

java参数传递之值传递和引用传递,方法,字符串,参数,数据,类型

java参数传递之值传递和引用传递

易采站长站,站长之家为您整理了java参数传递之值传递和引用传递的相关内容。

值传递

当调用方法进行值传递时,方法内部会产生一个局部变量,在方法内部使用局部变量的值,并不影响传入原来数据的值,包括在使用基本数据类型的包装类。

public class Assc

{

public static void main(String[] args)

{

int x1=1;

add(x1);

System.out.println("最终"+x1);//1

Integer x2=new Integer(1);

sub(x2);

System.out.println("最终"+x2);//1

}

public static void add(int x) {

x++;

System.out.println(x); //2

}

public static void sub(Integer x) {

x--;

System.out.println(x);//0

}

}

引用传递

当调用方法时使用引用类型参数时,使用的是与传入参数同一地址的数据,在方法内部进行参数的修改,会造成原来数据的改变(String 类型除外)

String类型数据在传入时,进行的操作是在字符串常量池中新建一个字符串,并不影响原先字符串的值

public class Assc

{

public static void main(String[] args)

{

String str="hello";

combine(str);

System.out.println("最终"+str);//hello

StringBuilder sb=new StringBuilder("nihao");

combine2(sb);

System.out.println("最终"+sb);//nihaoworld

}

public static void combine(String str) {

str+="world";

System.out.println(str);//helloworld

}

public static void combine2(StringBuilder str) {

str.append("world");

System.out.println(str);//nihaoworld

}

}

到此这篇关于java参数传递之值传递和引用传递的文章就介绍到这了,更多相关值传递和引用传递内容请搜索易采站长站以前的文章或继续浏览下面的相关文章希望大家以后多多支持易采站长站!以上就是关于对java参数传递之值传递和引用传递的详细介绍。欢迎大家对java参数传递之值传递和引用传递内容提出宝贵意见

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值