我有下面的方法,其中我从实体中提取值,然后将其设置在映射中作为该映射的值,但我的观点是,对于每个键,我显式设置值,因此如果键的数量增加方法代码也会增长,我可以基于方法Map.computeIfPresent制作一个通用方法吗,请告知我如何实现这两件事
private void setMap(AbcLoginDTO abcLoginDTO, Map<String, Object> getMap) {
getMap.put("XXNAME", abcLoginDTO.getUsername());
getMap.put("XX_ID", abcLoginDTO.getClientId());
getMap.put("RR_ID", abcLoginDTO.getUserId());
getMap.put("QQ_TIME", abcuserLoginDTO.getLocktime());
}
我在想类似下面的方法
static <E> void setIfPresent(Map<String, Object> map, String key, Consumer<E> setter, Function<Object, E> mapper) {
Object value = map.get(key);
if (value != null) {
setter.accept(mapper.apply(value));
}
}
慕村225694
缥缈止盈
慕容森
相关分类