我正在编写一个函数来测试 HashMap 是否具有空值。方法 .values() 应该只返回一个值的集合,但是我收到一个包含存储在里面的键和值的映射。这不好,因为我的函数的目的是检查值是否为空,但是如果我返回一个带有键和值的映射,那么如果我有一个没有值存储的键,则 .values().isEmpty() 返回 false。
public Map<KEY, List<VALUES>> methodName() {
if (MAPNAME.values().isEmpty()) {
throw new CustomErrorException(ExceptionHandler.getErrorWithDescription(ErrorConstants.ERROR_MSG_01));
} else {
return MAPNAME;
}
}
在上面的例子中, .values() 总是返回一个包含所有键和值的映射。如果 HashMap 有一个键,我的方法永远不会抛出 CustomErrorException,这很糟糕,因为它应该检测是否没有值。帮助!