Map取值方法,其中取得多种值,避免null值转换

最后更新于:2022-04-01 20:24:59

~~~ import java.math.BigDecimal; import java.util.Date; import java.util.Map; /** *

* Map取值方法,其中取得多种值,避免null值转换 *

* @author hailan * */ public class MapGetterTool { private Map map; public MapGetterTool(Map map){ this.map = map; } /** *

* 根据Key返回一个Double型 *

* @param key * @return Double */ public Double getDouble(String key){ if(map.get(key)!=null){ if(map.get(key) instanceof Double){ return (Double)map.get(key); }else{ return 0.0; } }else{ return 0.00; } } /** *

* 根据Key返回一个String *

* @param key * @return String */ public String getString(String key){ if(map.get(key)!=null){ if(map.get(key) instanceof String){ return (String)map.get(key); }else{ return null; } }else{ return ""; } } /** *

* 根据Key返回一个Date *

* @param key * @return Date */ public Date getDate(String key){ if(map.get(key)!=null){ if(map.get(key) instanceof Date){ return (Date)map.get(key); }else{ return null; } }else{ return null; } } /** *

* 根据Key返回一个Integer *

* @param key * @return Integer */ public Integer getInteger(String key){ if(map.get(key)!=null){ if(map.get(key) instanceof Integer){ return (Integer)map.get(key); }else{ return null; } }else{ return 0; } } /** *

* 根据一个Key返回一个Map *

* @param key * @return Map */ @SuppressWarnings("unchecked") public Map getMap(String key){ if(map.get(key)!=null){ if(map.get(key) instanceof Map){ return (Map)map.get(key); }else{ return null; } }else{ return null; } } /** *

* 根据key返回BigDecimal * 如果为null,则返回 new BigDecimal(0) *

* @param key * @return BigDecimal */ public BigDecimal getBigDecimal(String key){ if(map.containsKey(key)){ if(map.get(key) instanceof BigDecimal){ return (BigDecimal)map.get(key); }else{ return new BigDecimal(0); } }else{ return new BigDecimal(0); } } } ~~~
';