将代码最小化的三元运算符
本文关键字:三元 运算符 代码 最小化 | 更新日期: 2023-09-27 18:05:36
如何使用三元运算符
最小化以下代码if (toolButtonState.New == 1)
ts.Items["tsbNew"].Enabled = true;
else
ts.Items["tsbNew"].Enabled = false;
请提供一个实现
不需要三元操作符。你可以这样简化:
ts.Items["tsbNew"].Enabled = (toolButtonState.New == 1);
从技术上讲,您可以使用像这样的三元操作符,但是没有理由这样做:
ts.Items["tsbNew"].Enabled = (toolButtonState.New == 1) ? true : false;
通常,如果?
和:
后面的表达式不简单地求值为true
和false
,则三元表达式更有用,例如:
someControl.ForeColor = (toolButtonState.New == 1) ? Color.Red : Color.Black;
请记住,如果表达式不仅仅是一个简单的一行代码,那么如果您坚持使用老式的if/else
语句和花括号,您的代码可能更具可读性。
三元操作符的形式为:
(condition) ? (if true) : (if false)
那么代码中的三进制就会变成:
ts.Items["tsbNew"].Enabled = (toolButtonState.New == 1) ? true : false;
你会注意到if的真值是true
, if的假值是false
。您可以简单地删除三进制语句,通过将.Enabled
设置为条件的结果,它将做同样的事情:
ts.Items["tsbNew"].Enabled = (toolButtonState.New == 1);