Tôi có một chức năng đó là như sauSimplifing một lồng NẾU tuyên bố
string Foo(bool A, bool B)
{
if(A)
{
if(B)
{
return "W";
}
else
{
return "X";
}
}
else
{
if(B)
{
return "Y";
}
else
{
return "Z";
}
}
}
Đó đôi làm tổ chỉ cảm thấy không đúng với tôi. Có cách nào tốt hơn để triển khai mẫu này không?
Cảm ơn tất cả mọi người đã trợ giúp, tôi sẽ kết thúc với lộ trình ba chiều. Nó giúp tắt chức năng này:
if (female)
{
if (nutered)
{
destRow["TargetSex"] = "FS";
}
else
{
destRow["TargetSex"] = "F";
}
}
else
{
if (nutered)
{
destRow["TargetSex"] = "MN";
}
else
{
destRow["TargetSex"] = "M";
}
}
trong này
destRow["TargetSex"] = female ? (nutered ? "FS" : "F")
: (nutered ? "MN" : "M");
Luôn có 'if (A && B) {} nếu khác (B) {} khác {} ' –
@DavidStarkey Có 4 trạng thái kết quả có thể, bạn chỉ trả lại 3. –
Sau đó, nếu (A && B) {} khác nếu (! A && B) {} nếu không (B) {} else {}' –