如何编写以下功能:
public Object getFirstNotNull(Object... objects){
//return first that is not null
//otherwise return null
}
除非if-else-if
适用于所有Object
s?
答案 0 :(得分:4)
只需执行for循环,并在找到非null对象时返回。
for (Object obj : objects) {
if (obj != null) {
return obj;
}
}
return null;
答案 1 :(得分:4)
在Java 8中,你可以做到
public static <T> T getFirst(T... ts) {
return Stream.of(ts).filter(Objects::nonNull).findFirst().orElse(null);
}
答案 2 :(得分:1)
只需使用for循环,如下所示:
public Object getFirstNotNull(Object... objects){
for(Object obj:objects){
if (obj != null) {
return obj;
}
}
return null;
}