java是值传递的

今天碰到个java参数传递的问题,记录一下

下面为测试代码:

 如果不太了解java是值传递还是引用传递,可能会觉得main方法中的logMsg输出的结果为ab,但其实真实输出的为b;究其原因,就是java是通过值传递而不是引用传递的,这里调用test方法,传递的为logMsg的地址值,而不是logMsg引用,所以在main方法中的logMsg的指向的地址始终都未发生变化

29行改为如下方式,可以正常在mainlog中输出ab

logMsg.setLength(0);
logMsg.append(tmpLog);
原文地址:https://www.cnblogs.com/qq931399960/p/15607752.html