code: public static <T, R> R process(Class<R> clazz, T src, BiConsumer<R, T> biConsumer) {
          if (Objects.isNull(clazz)) {
              throw new IllegalArgumentException("the clazz argument must be not null");
          }
          if (Objects.isNull(src)) {
              log.warn("the src argument must be not null, return null. ");
              return null;
          }
          try {
              R r = clazz.newInstance();
              processObject(r, src, biConsumer);
              return r;
          } catch (Exception e) {
              throw new IllegalArgumentException(e.getMessage(), e);
          }
      }
docs: 拷贝单个对象
  
  @param clazz      目标类型
  @param src        原对象
  @param biConsumer 回调函数
  @param <T>        原数据类型
  @param <R>        目标数据类型
  @return 目标对象