只是很困惑为什么会发生这种情况:
public class OneClass {
public static void main(String[] args) {
StringBuilder sb = new StringBuilder("1111");
AnotherClass.updateParameter(sb);
System.out.print(sb);
}
}
public class AnotherClass {
public static void updateParameter(StringBuilder args) {
args.append("2222");
}
}
Output: 1111
谁能解释一下,非常感谢!
最佳答案
您显示的代码没有您描述的行为(相反,它打印 11112222
)。
最可能的解释是您没有运行您认为正在运行的代码(例如,您有 AnotherClass
的多个不同副本,或者您忘记保存文件或重新编译它等)
关于java - 另一个类的静态函数不会修改传入的引用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15739099/