我有以下聲明中C#:如何簡化的if/else語法
serverCard.Details = !String.IsNullOrEmpty(card.Details) ? card.Details : serverCard.Details;
我要檢查,看看是否card.Details爲null或空...如果不是,寫的值。有沒有什麼語法可以讓我忽略其他條件?
我有以下聲明中C#:如何簡化的if/else語法
serverCard.Details = !String.IsNullOrEmpty(card.Details) ? card.Details : serverCard.Details;
我要檢查,看看是否card.Details爲null或空...如果不是,寫的值。有沒有什麼語法可以讓我忽略其他條件?
您可以隨時使用舊if
聲明:
if(!String.IsNullOrEmpty(card.Details))
{
serverCard.Details = card.Details;
}
我覺得這裏不需要三元運算符。
你可以寫一個String的擴展方法來檢查是否nullOrEmpty。常規如果然後將短
擴展方法:
public static bool IsNullOrEmpty(this string str)
{
return string.IsNullOrEmpty(str);
}
public static bool IsNullOrWhiteSpace(this string str)
{
return string.IsNullOrWhiteSpace(str);
}
的,如果:
if(!card.Details.IsNullOrWhiteSpace())
serverCard.Details = card.Details
擴展方法會爲每個字符串工作。
這不會有多大意義。考慮一下,將其他部分遺漏掉會在代碼中留下空隙,即你想要分配什麼? – Polity
我所做的唯一改變就是刪除'!'並交換條件值以簡化讀取流程。 –