是否有针对每个循环的默认nullpointerexception检查器?
例如,现在我正在编写一个可循环列表的每个循环。但是为了测试列表不为null,我必须明确地测试它。
我的代码是否可以通过我不知道的默认nullpointerexception检查器进行简化?这样我就不必创建if语句并手动检查null。
我目前的代码:
if (myList != null) {
for (String item : myList) {
...;
...;
}
}
答案 0 :(得分:2)
一种方法是使用Java 8流API过滤掉空值:
myList.stream()
.filter(Objects::nonNull)
.forEach(elem -> doSomething(elem));
答案 1 :(得分:1)
如果我理解您的问题,您需要检查ArrayList
内的项目是否为NULL
。我们知道ArrayList
允许添加NULL
。所以,你可以这样做来测试它:
for (String item : myList) {
if (item != null){
...;
...;
}
}
如果您还想确保列表本身不是NULL
且ArrayList
中的元素也不是NULL
,那么请执行以下操作:
if (myList != null) {
for (String item : myList) {
if (item != null) {
...;
...;
}
}
}
答案 2 :(得分:1)
您的列表不为空并不保证其中的对象不是......
不幸的是,您还需要检查一下
Ember.get