Istnieją dwa poniższe instrukcje if, które mają wiele warunków za pomocą operatorów logicznych. Logicznie oba są takie same, ale kolejność czeków jest różna. Pierwszy działa, a drugi zawiedzie.Kolejność wykonywania warunków w C# If statement
Przekazałem MSDN w celu sprawdzenia, czy kolejność wykonywania określonych warunków; ale nie mogłem znaleźć.
Należy rozważyć warunek wielokrotnego sprawdzenia, którego operatorem logicznym jest &&
. Czy jest zagwarantowane, że zawsze będzie sprawdzać pierwszy warunek, a jeśli nie zostanie spełniony, drugi warunek będzie sprawdzany pod kątem , a nie?
Używałem podejścia 1 i działa dobrze. Poszukuję referencji MSDN uzasadniającej użycie.
UPDATE
Patrz "short-circuit" evaluation
KOD
List<string> employees = null;
if (employees != null && employees.Count > 0)
{
string theEmployee = employees[0];
}
if (employees.Count > 0 && employees != null)
{
string theEmployee = employees[0];
}
szukaj "zwarcie"! – David