我在Java中有以下方法:
public String normalizeList(List<String> keys) {
// ...
}
我想要检查keys
:
- 不是
null
本身;并且 - 不是空的(
size() == 0
);并且 - 没有任何
String
元素是null
;并且 - 没有任何
String
元素是空的(“”)
这是一个实用方法,将会放在类似于DataUtils
的“commons”风格的JAR中。以下是我的代码,但我认为它是错误的:
public String normalize(List<String> keys) {
if(keys == null || keys.size() == 0 || keys.contains(null) || keys.contains(""))
throw new IllegalArgumentException("Bad!");
// Rest of method...
}
我认为最后两个检查keys.contains(null)
和keys.contains("")
是不正确的,很可能会引发运行时异常。我知道我可以在if
语句内部遍历列表,并在那里检查null/空值,但如果存在更优雅的解决方案,我想尝试一下。