if else 簡寫,C#
如一:
int xingbie = 0;
string xb = xingbie == 0 ? "男" : "女";
如二:
string xb = null;
string xbNew = string.IsNullOrEmpty(xb) ? “” : xb;
如三:
StringBuilder sbRet = new StringBuilder();
sbRet.Append("\"explanation\":\"" + (string.IsNullOrEmpty(drBody["explanation"].ToString().Trim()) ? "" : drBody["explanation"].ToString().Trim()) + "\",");
uj5u.com熱心網友回復:
這不是簡寫。。。這叫做。。三目運算子。。。uj5u.com熱心網友回復:
書寫上是方便了。的確也很實用。不過要保證型別相同。if else則不會有這個問題。
uj5u.com熱心網友回復:
你沒有提出任何問題,只是想表達這種判斷陳述句的書寫還是?
uj5u.com熱心網友回復:
三目運算子確實可以簡化代碼,C#有很多神奇的東西,慢慢去發現吧uj5u.com熱心網友回復:
C# 很少人知道的科技
uj5u.com熱心網友回復:
說句實在話 目前就想找個代替if else的判斷uj5u.com熱心網友回復:
寫程式就像說話一樣,你想想如果是你,有這么多如果要怎么說
uj5u.com熱心網友回復:
設計模式角度看,if陳述句就是壞味道,反正都要消除如果是單行條件陳述句,本身沒有邏輯,用?:三目運算子消除
如果是有業務邏輯的分支陳述句塊,那就說明這是兩個不同的但又相似的東西,考慮用多型來讓系統自動選擇執行那塊
uj5u.com熱心網友回復:
string xb = null;string xbNew = string.IsNullOrEmpty(xb) ? “” : xb;
還可以寫
string xb = null;
xbNew = xb ?? "";
你沒學過吧
uj5u.com熱心網友回復:
三木運算子已經是簡化了,用if else 可以更清晰uj5u.com熱心網友回復:
好端端的微軟檔案、教程不用,搞什么歪門邪道和“慢慢發現”。微軟都還給你翻譯好了!https://docs.microsoft.com/zh-cn/dotnet/csharp/tutorials/intro-to-csharp/
https://docs.microsoft.com/zh-cn/dotnet/csharp/language-reference/index
另外,就算C#有什么神奇的,也輪不上到處都有的三目運算子啊……
uj5u.com熱心網友回復:
請教,多型如何完全替換if。
uj5u.com熱心網友回復:
利用 C# 8 還可以這么寫:string xb = xingbie switch {
0 => "男",
1 => "女",
_ => "未知"
}
uj5u.com熱心網友回復:
真的不錯
長知識了
uj5u.com熱心網友回復:
c#語法糖越來越多,其實有時候感覺沒有必要。你語法上再靈活,趕得上JavaScript么?還是做好自己的特色。轉載請註明出處,本文鏈接:https://www.uj5u.com/net/93499.html
標籤:C#
上一篇:“/”應用程式中的服務器錯誤。 無法找到資源。 說明: HTTP 404。您正在查找的資源(或者它的一個依賴項)可能已被移除
