您如何更好地编写这段包含大量 if 语句的代码?

How would you write this piece of code with lots of if-statements better?

    if (right == null && parent == null)
        return null;
    else if (right == null)
        return parent;
    else if (parent == null)
        return right;
    else
        return parent.val > right.val ? right : parent;

    if (right == null && parent == null)
        return null;
    else if (right == null || parent == null)
        return parent == null ? right : parent;
    else
        return parent.val > right.val ? right : parent;

或者您还有其他建议吗?我正在寻找干净的代码。

你不需要检查两者是否都为空。下面的第一个 if 语句将为您执行此操作(因为如果 rightparent 为 null,则将返回 null)。

if (right == null) {
    return parent;
}

if (parent == null) {
    return right;
}

return parent.val > right.val ? right : parent;