cn.opencodes.utils.MapUtils Maven / Gradle / Ivy
package cn.opencodes.utils;
import java.math.BigDecimal;
import java.util.Date;
import java.util.Map;
/**
* Map取值方法,其中取得多种值,避免null值转换
* @author HJ
*
*/
public class MapUtils extends org.apache.commons.collections.MapUtils{
private Map map;
public MapUtils(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);
}
}
}