泛型T汇总--代码中可以使用
1 public class TTest1 { 2 3 4 // 这里提供数据,相当于就是加工好数据,用 unaryOperator.apply(entity);来进行处理数据 5 public <T> void readFile(Optional<T> optional, UnaryOperator<T> unaryOperator) { 6 T obj = optional.get(); 7 final T entity = (T) ReflectUtil.newInstance(obj.getClass()); 8 BeanUtils.copyProperties(obj, entity); 9 Field[] fields = obj.getClass().getDeclaredFields(); 10 // 根据反射处理参数 11 unaryOperator.apply(entity); 12 } 13 14 15 // 这里处理逻辑 16 public void handleData() { 17 Optional<User> optional = Optional.of(new User()); 18 readFile(optional, user -> { 19 saveUser(user); 20 return null; 21 }); 22 23 } 24 25 public void saveUser(User user) { 26 System.out.println(user); 27 } 28 29 30 }
总结:利用hutool工具类提供 ReflectUtil,根据泛型T获取泛型对象entity,然后利用反射进行处理
郭慕荣博客园