条件运算符不是"short if form"...它是一个运算符,它根据第一个操作数的计算值来计算第三个操作数或第二个操作数.整个表达式的结果是任何操作数被评估的结果(在第2个/第3个之外),在必要时转换为结果类型(第2和第3个操作数必须是相同类型,或者必须有隐式转换为一个).
您不能将它用作单独的语句,并且您当然不能将多个语句用作操作数.请注意,它必须评估的值-如果Output
和DoSomethingElse
是void
方法,这就是另一个理由,为什么你不能使用条件运算符.
只是不要这样做.如果需要if
语句的执行模型,请使用if
语句.
// I generally try to make conditions positive where possible. It's easier to read IMO. if (myCondition == "true") { Output("true"); } else { Output("false"); DoSomethingElse(); }