使用泛型实现工具类功能
使用泛型实现公用代码调用,只要是满足条件的入参,出参都是可以实现调用的。代码如下所示:
@Data public class CommonParams { private Long id; private String name; }
@Data public class BaseDto { private Long id; }
public class FanXing { public <T extends BaseDto, R extends CommonParams> void convert(T t, List<R> r){ R result = r.stream().filter(data -> data.getId().equals(t.getId())).findFirst().orElse(null); // 实现逻辑。。。。。 } public <T extends CommonParams,R extends CommonResult> R convert(T t){ // 实现逻辑 R result = null; result.setCode(result.getCode()); return result; } }
总结:使用泛型,可以让满足条件的入参,出参可以调用公共逻辑,实现代码的封装。
郭慕荣博客园