2013-05-06 57 views
0
return x%2 != 0; // Return true if x is odd. => ok 


    return x>0 == 1; // Return true if x > 0 => this won't work 

有人能告訴我爲什麼第二行不起作用嗎?爲什麼我不能使用">""=""<" ...運營商?Lambda表達式替換爲什麼我可以使用「%」運算符而不是「>」運算符

+2

只是'返回X> 0;' – 2013-05-06 17:34:31

+0

哇... @ RobertHarvey您的評論只是漣漪通過每一個答案! – 2013-05-06 17:35:45

+0

在我的辯護中,我正在編輯和添加,他評論說! :P – FlyingStreudel 2013-05-06 17:40:59

回答

7

因爲x > 0是一個布爾值,而不是int。

您可以通過使用return x > 0;

1

>簡化,這是比較運算符返回boolean值。

只需

public bool FooBar(int x) 
{ 
    return x > 0; 
} 

你問的經營者,都將除了=工作。它是C#中的一個賦值運算符。所以,你不能做

return x = 1; 

但你可以做

return x == 1; 

OR

return x < 1;