Нашли или выдавили из себя код, который нельзя назвать нормальным,
на который без улыбки не взглянешь?
Не торопитесь его удалять или рефакторить, — запостите его на
говнокод.ру, посмеёмся вместе!
А зачем здесь else? Куда его впихнуть? Тут если оба не нул - возвращаем результат, а если нул только 1 - кидаем ошибку. Если нул оба - ничего не делаем.
Если сомневаешься, составь таблицу истинности.
Первое условие:
оба null - 0
первый null - 0
второй null - 0
оба не null - 1
Второе условие:
оба null - 0
первый null - 1
второй null - 1
оба не null - 1
Вывод - от второго if'а не избавиться (см. случай когда оба null), но ставить его в else первого имеет смысл для ясности - из-за return выше он все равно выполнится тогда и только тогда когда есть хотя бы один null.
Написано сотрудником эпла, недавно перешедшим на сторону M$? 🙂
Первое условие:
оба null - 0
первый null - 0
второй null - 0
оба не null - 1
Второе условие:
оба null - 0
первый null - 1
второй null - 1
оба не null - 1
Вывод - от второго if'а не избавиться (см. случай когда оба null), но ставить его в else первого имеет смысл для ясности - из-за return выше он все равно выполнится тогда и только тогда когда есть хотя бы один null.
Похвально, сынок.