ich eine Funktion haben, die wie folgtSimplifing eine verschachtelte IF-Anweisung
string Foo(bool A, bool B)
{
if(A)
{
if(B)
{
return "W";
}
else
{
return "X";
}
}
else
{
if(B)
{
return "Y";
}
else
{
return "Z";
}
}
}
Das doppelte Verschachtelung mir fühlt sich einfach falsch ist. Gibt es einen besseren Weg, dieses Muster zu implementieren?
Vielen Dank für die Hilfe, ich am Ende mit der Trinary Route. Es half dies wenden:
if (female)
{
if (nutered)
{
destRow["TargetSex"] = "FS";
}
else
{
destRow["TargetSex"] = "F";
}
}
else
{
if (nutered)
{
destRow["TargetSex"] = "MN";
}
else
{
destRow["TargetSex"] = "M";
}
}
um diese
destRow["TargetSex"] = female ? (nutered ? "FS" : "F")
: (nutered ? "MN" : "M");
Es gibt immer 'if (A && B) {} sonst if (B) {} else {} ' –
@DavidStarkey Es gibt 4 mögliche Ergebniszustände, Sie geben nur 3 zurück. –
Dann' if (A && B) {} sonst if (! A && B) {} sonst if (B) {} else {} ' –