是否有處理條件語句中的兩個比較的簡略方法?例如:if(ReturnedCount > 0 && ReturnedCount < 50){ ...}我相當(dāng)確定變量必須始終位于運算符的左側(cè),因為當(dāng)我嘗試以下操作時它不起作用:if(0 < ReturnedCount < 50){ ...}我在 google 上搜索了 SQL 中與 between 關(guān)鍵字等效的 c#,但沒有得到好的結(jié)果。有沒有更好的方法來處理同一變量的這種雙重比較?
1 回答

紅糖糍粑
TA貢獻(xiàn)1815條經(jīng)驗 獲得超6個贊
簡短的回答,C# 沒有任何語法糖來幫助,每個條件測試只是被添加到語句中。
在某些時候,當(dāng)它開始變得難以閱讀時,您可以將其分解為返回 true/false 的方法調(diào)用。
IE。
if (Pred.Equals( a, b, c, d )) { ... }
其中,Pred 是一個(不存在的)靜態(tài)類,包含用作邏輯謂詞的輔助方法。
交替...
第二種方法是鏈接方法調(diào)用以表示連續(xù)的條件測試。
IE。
if (a.GreaterThan(b).LessThan(c).IsTrue()) {...}
其中,GreaterThan 和LessThan 是返回“this”值或“null”的擴(kuò)展方法,如果“this”不為null,則IsTrue 返回true。
這是我自己遇到的僅有的兩種技術(shù),祝你好運!
- 1 回答
- 0 關(guān)注
- 213 瀏覽
添加回答
舉報
0/150
提交
取消