[英]How to reduce the nesting of these if-conditionals?
我有一個小問題:D我找不到正確的搜索詞,所以我寫了這個問題。 我怎么這么短? 我知道這個邏輯|| 但我怎么能在一行中添加超過1個? 感謝時間最好的問候約翰
bool b = [self NSStringContains:convert contains:@"Input"];
if (b ==true)
{
bool b = [self NSStringContains:convert contains:@"Output"];
if (b ==true)
{
bool b = [self NSStringContains:convert contains:@"statecheck"];
if (b ==true)
{
....
}
}
}
在這種情況下,您似乎需要&&
:
if ([self NSStringContains:convert contains:@"Input"] &&
[self NSStringContains:convert contains:@"Output"] &&
[self NSStringContains:convert contains:@"statecheck"])
{
...
}
對於它的價值,給予bool b;
, if (b==true)
總是多余的 - 只需使用if (b)
。
可能是這樣的:
bool hasInput = [self NSStringContains:convert contains:@"Input"];
bool hasOutput = [self NSStringContains:convert contains:@"Output"];
bool hasStatecheck = [self NSStringContains:convert contains:@"statecheck"];
if (hasInput && hasOutput && hasStatecheck)
{
}
你正在使用的是,“如果這個條件,那么檢查這個條件,這個條件”,等等。你可以把這些與邏輯AND放在一起,用&&
表示。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.