JavaRush /Блог /Архив info.javarush /Говнокод #15
hubert
41 уровень

Говнокод #15

Статья из группы Архив info.javarush
result = result == 0 ? tempResult : (tempResult == 0 ? result : (result == tempResult ? result : result * tempResult));
Комментарии (10)
ЧТОБЫ ПОСМОТРЕТЬ ВСЕ КОММЕНТАРИИ ИЛИ ОСТАВИТЬ КОММЕНТАРИЙ,
ПЕРЕЙДИТЕ В ПОЛНУЮ ВЕРСИЮ
Izhak Уровень 22
7 мая 2014
ещё вариант
if ((result * tempResult) == 0) result +=  tempResult;
else if (result != tempResult) result *= tempResult;
billybonce Уровень 29
7 мая 2014
а если через тернарный оператор то так:

result = result==0 ? 
        tempResult : (result & tempResult)!=0 ? 
                            result*tempResult : result;

очень читабельно, кстати, становится, если писать ":" под "?" — чтото типа двоичного дерева
billybonce Уровень 29
7 мая 2014

if (result==0) 
    result = tempResult;
else 
if ( (result & tempResult) !=0) 
    result*=tempResult;