1) Ich weiß, wie if…else if
Anweisungen funktionieren, aber im nächsten Beispiel sind beide Methoden identisch, was den resultierenden Wert betrifft. Es spielt also eine Rolle, welche der beiden Methoden ich verwende oder sollte ich immer diejenige wählen, die dem Code, den der Code versucht, semantisch am nächsten kommt (hier vermute ich, dass die beiden Methoden semantisch recht unterschiedlich sind)? Also welche Methode würdest du benutzen und warum?Wann 'if ... else if' und wann zu verwenden ist
protected string GetNumberDescription(int value)
{
if (value >= veryBigNumber)
return veryBigNumberDescription;
else if (value >= bigNumber)
return bigNumberDescription;
else if (value >= smallNumber)
return smallNumberDescription;
else
return "";
}
protected string GetNumberDescription(int value)
{
if (value >= veryBigNumber)
return veryBigNumberDescription;
if (value >= bigNumber)
return bigNumberDescription;
if (value >= smallNumber)
return smallNumberDescription;
else
return "";
}
2) I losts Code bemerkt verwendet das folgende Format, wenn if ... else if
Aussagen writting:
if ...
else if ...
else ...
Aber ist das nicht (zumindest vom Konzept her) richtigere Weg:
if ...
else
if ...
else ...
Ähnliche Fragen im Java-Kontext: http://StackOverflow.com/Questions/3579918/Programming-Preference-use-ELS-ifs-mit-Multiple-Reurn-Statements/ – BalusC
Check-out http: //www.refactoring. com/catalog/replaceNestedConditionalWithGuardClauses.html ... –
Die erste kann zu Problemen führen, wenn jemand eine else if-Anweisung irgendwo in den ifs-Block einfügt. Das Problem ist Code-Redundanz und Leistung erreicht – Woot4Moo