我的問題有點難以描述,所以我在下面寫了一個假設的代碼(無功能),我想知道 C# 中是否有類似的替代方案:
if (Red == true)
{
i -= 3;
}
else if (Yellow == true)
{
i -= 2
}
then
{
list.Clear();
}
else{}
if如果在何處執行,則兩個陳述句都遵循一種“then”函式。使用 this 只是為了在這種情況下我不需要list.Clear();在每個 if 陳述句中都做 a 。
uj5u.com熱心網友回復:
不,沒有像then這樣的語法構造,但是您可以創建一個方法來清除串列并接受并回傳值以遞減
private int ClearAndDecrementBy(int decrement)
{
list.Clear();
return decrement;
}
并將其稱為
if(Red)
{
i -= ClearAndDecrementBy(3);
}
else if(Yellow)
{
i -= ClearAndDecrementBy(2);
}
else
{
}
雖然不確定是否有任何優勢。該串列應該在全域類級別宣告,如果只是為了使其以這種方式作業而需要它,這絕不是一個好的做法。因此,在 if 塊中添加對list.Clear的呼叫似乎更清晰,并且不會造成任何傷害
uj5u.com熱心網友回復:
嘗試這個:
if(Red == true)
{
i -= 3;
}
else if(Yellow == true)
{
i -= 2
}
else
{
}
if(Red == True || Yellow == true) //You can add more like: Blue == true
{
list.Clear();
}
uj5u.com熱心網友回復:
您可以從偽代碼中洗掉“then”陳述句,并將以下行添加到所有內容的末尾。
if (Red || Yellow)
{
list.Clear();
}
uj5u.com熱心網友回復:
嘗試這個:
if (Red || Yellow)
{
i = Red ? -3 : -2;
list.Clear();
}
else { }
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/352739.html
下一篇:從子矩陣創建矩陣?
