C#如果返回无效,则为单行
我希望使用带有C#如果返回无效,则为单行,c#,.net,if-statement,C#,.net,If Statement,我希望使用带有?运算符的单行if语句调用void方法上的return 这是一份完整的声明: if (failPaths.Count == paths.Count) { return; } 我知道我可以做一些类似于if(failPaths.Count==path.Count)返回的事情但我只是想看看如何使用?操作符来实现它。在C中,没有办法实现您想要实现的目标 三元运算符要求true和false值计算为赋值表达式左侧的类型(或方法/属性返回值) 由于没有明确的方法返回/设置void,因此
?
运算符的单行if语句调用void方法上的return
这是一份完整的声明:
if (failPaths.Count == paths.Count) {
return;
}
我知道我可以做一些类似于if(failPaths.Count==path.Count)返回的事情
但我只是想看看如何使用?
操作符来实现它。在C中,没有办法实现您想要实现的目标
三元运算符要求true
和false
值计算为赋值表达式左侧的类型(或方法/属性返回值)
由于没有明确的方法返回/设置void
,因此在C#中无法实现这一点。这不能使用您提到的?
操作符来完成
事实上,条件运算符只是计算条件并从两个表达式返回first或secod,所以可以将其视为表达式本身
但是在您的示例中,
如果
语句不是用于表达式求值,而是用于控制流,我想您是想说“?:”操作符
不幸的是,没有办法做到这一点,因为编译器需要“else”条件
(condition)?true:else
你不能。它们不一样。一是声明,;另一个是表达式。条件运算符不能替代
if
。它只是根据条件获取值的快捷方式,只有在提高可读性时才应使用。if
-语句功能更强大,应用于流控制,如果条件运算符过于繁琐。