Подтвердить что ты не робот

Операторы с одним слоем if, как преобразовать этот оператор if-else

Всего здесь нет, так что будьте осторожны. Я везде искал и не могу найти ответа на этот вопрос. Как сконденсировать следующее?

if (expression)
{
    return true;
}
else
{
    return false;
}

Я не могу заставить его работать, так как он возвращает что-то против установки чего-то. Я уже видел такие вещи:

somevar = (expression) ? value1 : value2;

Как я уже сказал, будьте осторожны:)

4b9b3361

Ответ 1

return (expression) ? value1 : value2;

Если value1 и value2 на самом деле true и false, как в вашем примере, вы можете просто

return expression;

Ответ 2

Все, что вам нужно в вашем случае:

return expression;

Причина в том, что само выражение оценивает логическое значение true или false, поэтому избыточно иметь блок if (или даже оператор ?:).

Ответ 3

Если expression возвращает логическое значение, вы можете просто вернуть его результат.

Пример

 return (a > b)

Ответ 4

Так как выражение булево:

return expression;