在 Java 中,Supplier.get() 方法返回的是一个结果,而不是一个参数。它没有参数传递的概念,因此无法修改参数的属性。

如果你想要修改一个对象的属性,你需要将这个对象作为参数传递给一个方法,然后在方法内部修改它的属性。然后可以使用 Supplier 来获取这个修改后的对象。

以下是一个示例代码:

class MyClass {
    private String property;

    public MyClass(String property) {
        this.property = property;
    }

    public void setProperty(String property) {
        this.property = property;
    }

    public String getProperty() {
        return property;
    }
}

public class Main {
    public static void main(String[] args) {
        MyClass myObject = new MyClass("initial value");

        Supplier<String> supplier = () -> {
            myObject.setProperty("modified value");
            return myObject.getProperty();
        };

        String result = supplier.get();
        System.out.println(result); // Output: modified value
    }
}

在这个示例中,我们创建了一个 MyClass 对象,并将其作为参数传递给 Supplier 的 get() 方法。在 Supplier 的实现中,我们修改了 myObject 的属性,并返回修改后的值。最后,我们通过调用 get() 方法来获取这个修改后的值,并将其打印出来。

请注意,这里的修改是通过方法调用来完成的,而不是直接修改 Supplier 的参数。这是因为 Java 中的对象是通过引用传递的,而不是通过值传递的

java Supplierget获得的参数是引用传递吗修改这个参数的属性能够改变吗

原文地址: https://www.cveoy.top/t/topic/iOyM 著作权归作者所有。请勿转载和采集!

免费AI点我,无需注册和登录