常用方法
ObjectUtil.isEmpty()
比较笼统的判断是否为空,不属于下面类型的仅仅判断是否为null
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| public static boolean isEmpty(Object obj) { if (null == obj) { return true; }
if (obj instanceof CharSequence) { return StrUtil.isEmpty((CharSequence) obj); } else if (obj instanceof Map) { return MapUtil.isEmpty((Map) obj); } else if (obj instanceof Iterable) { return IterUtil.isEmpty((Iterable) obj); } else if (obj instanceof Iterator) { return IterUtil.isEmpty((Iterator) obj); } else if (ArrayUtil.isArray(obj)) { return ArrayUtil.isEmpty(obj); }
return false; }
|
Optional.ofNullable().map().orElse()
v指代是gms这个列表
1 2 3 4 5 6
| List<AllErgenInfoResp> gms = wsAdpterService.getPatientGmInfo(hospitalNumber); patientTagVO.setIsGm( Optional.ofNullable(gms) .map(v -> !v.isEmpty()) .orElse(false) );
|
equal比较
使用("gcx_blood").equals(param.getObsvCode())
而不是param.getObsvCode().equals()
这样写可以避免空指针异常,如果param.getObsvCode()
返回null
。调用equal()
会抛异常,而使用("gcx_blood").equals(null)
不会抛出异常,而是直接返回 false
。