Sie suchen die conditional operator oder ternären Betreiber ?:
:
Seine Form ist
condition ? value_if_true : value_if_false
Zum Beispiel:
Console.Write((!Example) ? "Example is false" : "Example is true");
Oder meine persönliche Präferenz,
Console.Write(Example ? "Example is true" : "Example is false");
, so dass ich nie passiert, zu denken, was, wenn "nicht Example
falsch ist".
Beachten Sie, dass Sie nicht von beliebigem Code für value_if_true
und value_if_false
setzen können - es hat ein Ausdruck, keine Aussage sein. So ist die oben ist gültig, weil
(!Example) ? "Example is false" : "Example is true"
ein string
ist, können Sie schreiben:
string message = (!Example) ? "Example is false" : "Example is true";
Console.Write(message);
jedoch nicht
tun können
(!Example) ? Console.Write("Example is false") : Console.Write("Example is true")
zum Beispiel, weil Console.Write(..)
keinen Wert zurückgeben oder
(!Example) ? { a = 1; "Example is false" } : "Example is true"
weil { a = 1; "Example is false" }
kein Ausdruck ist.
Wenn Sie ein Fan von verschachteltem Code sind, werden Sie froh sein, dass Sie ternäre Ausdrücke unendlich verschachteln können. 'var x = thisIsTrue? 1: Das ist wahr? 2: 3' usw. –