高分悬赏:Java语言为什么不能直接将一个函数的结果作为参数给另一个函数的调用

高分悬赏:Java语言为什么不能直接将一个函数的结果作为参数给另一个函数的调用

其实是可以的呀。你品下。方法有返回值就可以,

我不知道问题是不是这个

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;


public class Testmain {

    //如果直接赋值时在jvm中这个user的引用已经更换,无法当成引用类型传递
    private void get1(User user){
        user=new User(2,"王二");
    }

    //user中的引用类型的值更换了,但是引用没更换
    private void get2(User user){
        User user2=new User(3,"张三");
        user.setId(user2.getId());
        user.setName(user2.getName());
    }

    public static void main(String[] args) {
        User user=new User(1,"养大");
        System.out.println(user.toString());
        Testmain test=new Testmain();
        test.get1(user);
        System.out.println(user.toString());
        test.get2(user);
        System.out.println(user.toString());
    }
}

@Data
@AllArgsConstructor
@NoArgsConstructor
class User{
    private Integer id;
    private String name;
}

可以把,这是通过测试的代码

public class function {

public static void main(String[] args) {

    int max=max(cal(10,10),50);
    System.out.println(max);
}

static int max(int a,int b){
return a>b?a:b;
}
static int cal(int a,int b){
return a+b;

}

}