web-dev-qa-db-ja.com

ワンライナーifステートメント、このif-else-statementの変換方法

ここの合計初心者なので、優しくしてください。私はいたるところを見てきましたが、これに対する答えが見つからないようです。以下を凝縮するにはどうすればよいですか?

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

何かを返すか、何かを設定するので、私はそれを動作させることができません。私はすでにこのようなものを見てきました:

somevar = (expression) ? value1 : value2;

私が言ったように、優しくしてください:)

35
snickered
return (expression) ? value1 : value2;

value1およびvalue2は実際にはtruefalseであり、あなたの例のように、

return expression;
73
James McNellis

あなたの場合に必要なのは以下だけです:

return expression;

理由は、式自体がtrueまたはfalseのブール値に評価されるため、ifブロック(または?:演算子)。

7
Jacob

expressionがブール値を返す場合、その結果を返すことができます。

 return (a > b)
3
nabrond

式はブールなので:

return expression;
2
Mitch Wheat