[英]What does this method's return statement return?
我看到了用C#編寫的返回布爾值的方法。 該方法的return語句如下所示:
return count > 0;
如果我正確地閱讀了此內容,則在count大於零時它將返回一個值。 如果“ count”的值不大於0會怎樣? 返回了什么? 零? 如果是這樣,則return語句不能只說:
return count;
不,這是一個返回布爾值的表達式,所以
return count > 0;
如果count為1+,則返回true,否則返回false。
它返回表達式count > 0
的值。 那是一個布爾表達式(即bool
類型)。
就像這樣:
bool result = (count > 0);
return result;
另一種思考方式(但請不要編寫此代碼):
bool result = (count > 0) ? true : false;
return result;
要么
bool result;
if (count > 0)
{
result = true;
}
else
{
result = false;
}
return result;
這些都是可怕的扭曲,但重要的是, count > 0
只是 bool
類型的一種表達。 布爾表達式通常用於條件(if,while等)中,但它們只是普通表達式,可以像其他表達式一樣進行求值。
false
,如果count不大於零,則將返回表示true
可信舊常量。
您可以像下面這樣重寫return語句:
if (count > 0)
{return true;}
else
{return false;}
如果返回count,則將返回一個整數值,並且方法簽名將不再匹配
如果count
的值不大於0,則返回false
。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.