java - 另一个类的静态函数不会修改传入的引用

标签 java

只是很困惑为什么会发生这种情况:

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/

相关文章:

java - JsonPath - 使用一个 DocumentContext 如何使用默认配置和 Option.AS_PATH_LIST 进行查询?

Java 内存行为 : Different with Thread. sleep

java - 让 JOptionPane.showConfirmDialog() 在 Mac OSX 上运行

java - ClassCastException :java. lang.Class 无法转换为 java.lang.reflect.ParameterizedType

java - JOOQ 在 orderBy 方法中结合 Field 和 SortField?

java - 在Kotlin中创建JPA规范对象

java - eBay 交易 API getOrders : check if order is marked as shipped

java - Spring Boot,通过 POST 从 InputStream 上传文件时出现 RestTemplate 异常

java - 从客户端向服务器发送无限文件

java - TestNG retryAnalyzer 仅在方法@Test 中定义时才有效,在类'@Test 中无效