次のように、2 バイトで C# の三項演算子を使用する方法はないようです。
byte someByte = someBoolean ? 0 : 1;
そのコードは現在、「ソース タイプ 'int' をターゲット タイプ 'byte' に変換できません」でコンパイルに失敗します。これは、コンパイラが数値を整数として扱うためです。どうやら 0 と 1 がバイトであることを示すサフィックスが指定されていないため、唯一の回避策は (a) 結果をバイトにキャストするか、(b) if-else コントロールを使用することです。
何かご意見は?