以下陈述有何作用?

时间:2011-10-22 07:35:39

标签: c#

我根本不是c#程序员,但需要从C#应用程序获得某些计算。不,我遇到了一些我不确定输出是什么

的东西

我有以下代码行

pageSizeFactor = PrintingRequirements.FormSize == FormSize.A4 ? 1 : 2;

我只需要确认我是否正确,上面的意思是以下,pageSizeFactor = Formsize,所以如果Formsize是A4 pageSizeFactor将是1,否则它将是2?

3 个答案:

答案 0 :(得分:6)

是;如果PrintingRequirements.FormSizeFormSize.A4pageSizeFactor将为1.否则,它将为2.

该运算符(?:)称为the conditional operator。它有时也被称为三元运算符。它的语法如下:

a ? b : c

如果a评估为true,则结果为b;否则,它将是c

答案 1 :(得分:5)

那是conditional operator

result = boolean-expression ? expression-if-true : expression-if-false

基本上if - else内联。

答案 2 :(得分:1)

编写您提供的代码的简单方法是:

if (PrintingRequirements.FormSize == FormSize.A4){
    pageSizeFactor =  1;
} else {
    pageSizeFactor =  2;
}