一位同事和我討論了用什麼樣式來表達C#中的AND NOT條件。雖然這兩種方法都有效,但我們對運營商的風格持不同意見。他說& &!是首選的方法。例如:在C#中表達AND NOT運算符的正確方法是什麼?
db.Widget.Where(w => w.Name == "Foo" && !w.IsBlue);
我說那會工作,但是&!將工作。例如:
db.Widget.Where(w => w.Name == "Foo" &! w.IsBlue);
我曾經有一本關於C#風格的書,但是不記得看過這個。 SO使用什麼?
如果第一個操作數爲「假」,'&&將會短路,而'&'則不會。 – 4castle
強烈建議不要使用按位「&...」,雖然它可能工作,但這不是自然的,並且會讓一些編碼人員摸不着頭腦。如果需要拼寫 - 這裏沒有「不是」運算符 - 只有三個運算符按位和,布爾值和布爾值不是。 –
沒有「'&&!'操作符」,也沒有「'&!'操作符」。只有'&&'和'&'運算符以及'!'運算符可以應用於'&&'和'&'運算符的操作數。查看'&&'和'&'之間區別的重複標記。 –