更清洁的方法来检查是否为空

时间:2016-03-16 17:03:00

标签: java null

我有一个包含几个字节数组的类,有些可能是空的,有些则不是。我想返回第一个非空数组(如果有),如果没有,则返回null。但代码似乎是多余和丑陋的。

public byte[] getFirstPhoto() {
    if (photo1 != null) {
        return photo1;
    }       
    if (photo2 != null) {
        return photo2;
    }
    if (photo3 != null) {
        return photo3;
    }
    if(videoThumbnail != null){
        return videoThumbnail;
    }
    return null;
}

无论如何要清理它,或者不是真的?

1 个答案:

答案 0 :(得分:4)

是。写一个像这样的方法:

public byte[] firstNonNull(byte[]... arrays) {
    for (byte[] array : arrays) {
        if (array != null)
            return array;
    }
    return null;
}

然后调用此函数以正确的顺序传入四个数组。