我正在尝试在Spring Boot中实现类似于这样的util
:
public static boolean isAllEmptyOrNull(Collection... collectionList) {
for (Collection collection : collectionList) {
if (!Collections.isEmpty(collection)) {
return false;
}
}
return true;
}
我可以处理以下情况:
- isAllEmptyOrNull(listOfCat);
- isAllEmptyOrNull(listOfDog, mapOfStringToString);
- isAllEmptyOrNull(listOfDog, listOfCat);
- isAllEmptyOrNull(listOfDog, listOfCat, mapOfStringToList, mapOfStringToMap);
更新于2018-12-06
感谢@Deadpool的帮助,我的解决方案如下:public static boolean isAllCollectionEmptyOrNull(Collection... collections) {
for (Collection collection : collections) {
if (!Collections.isEmpty(collection)) {
return false;
}
}
return true;
}
public static boolean isAllMapEmptyOrNull(Map... maps) {
for (Map map : maps) {
if (!Collections.isEmpty(map)) {
return false;
}
}
return true;
}
当然,您可以像nullpointer一样使用
stream
和方法重载
。
myMap.keySet()
或myOtherMap.values()
传递给它。或者,你可以接收Object...
并对可变参数数组中的每个对象使用instanceof Collection
和instanceof Map
,并委托给你发布的两种解决方案之一。缺点是你可以传递任何东西到这个方法中,即除了映射和集合之外,你还可以传递字符串、数字等。你应该处理这些情况... - fps