繁体   English   中英

使用Java 8进行重构

[英]Refactoring using Java 8

我想使用Java 8重构代码,所以我想不要使用像下面这样的setter方法:

    Class MyService{
    User user = new User();
    user.setName(response.getName());
    user.setId(response.getId());
    user.setType(response.getType());
    user.setDesignation(response.getDesignation());
}

在我的服务课程中。

我在用户Pojo中制作了一个方法

Class User{

    public static User create(Response response){
    User user = new User();
    user.setName(response.getName());
    user.setId(response.getId());
    user.setType(response.getType());
    user.setDesignation(response.getDesignation());
    return user;
    }
}

在服务课程中,我写道:

List<User> userList=reponseList.stream().map(User::create).collect(toList());

除此之外,这是正确的方法还是更好的解决方案? 我的服务中实际上有很多设置方法。

而不是创建静态的create方法,而是定义一个User构造函数,该构造函数采用Response并从中进行初始化。

Class User{

    public User(Response response) {        
        setName(response.getName());
        setId(response.getId());
        setType(response.getType());
        setDesignation(response.getDesignation());
    }

}

然后,您可以致电:

List<User> userList=responseList.stream().map(User::new).collect(toList());

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM