在项目中,很多情况下需要通过接口获得数据,数据类型包括Map<String, Object> 或者 JSONObject ,然后get某个属性;
例如:Object object = map.get("name"),此时,如果name字段值为null,则 object 在转换类型时(比如转String,或Integer ,或其他类型)就会报错空指针异常。
所以,需要对object 进行非空判断
需要用到:lang3包中的 ObjectUtils 和StringUtils 工具类,结合使用,来判断Object对象是否为空,或 空字符串;
pom依赖:
<!-- https://mvnrepository.com/artifact/org.apache.commons/commons-lang3 -->
<dependency>
<groupId>org.apache.commons</groupId>
<artifactId>commons-lang3</artifactId>
<version>3.9</version>
</dependency>
具体实现:
import org.apache.commons.lang3.ObjectUtils;
import org.apache.commons.lang3.StringUtils;
/**
* 判断Object对象为空或空字符串
* @param obj
* @return
*/
public static Boolean isObjectNotEmpty(Object obj) {
String str = ObjectUtils.toString(obj, "");
Boolean flag = StringUtils.isNotBlank(str)
return flag;
}