У меня есть утверждение if, которое становится немного громоздким.Я хочу знать, есть ли лучший способ использовать несколько похожих операторов, таких как объединение в одно или использование другого условного оператора, такого как цикл while или do.Любые предложения приветствуются.
if (options.OpenCloseOverridesOptions != null && !options.OpenCloseOverridesOptions.AreEqual(OpenCloseOverridesOptions))
return false;
if (options.DeliveryOpenCloseOverridesOptions != null && !options.DeliveryOpenCloseOverridesOptions.AreEqual(DeliveryOpenCloseOverridesOptions))
return false;
if (options.PickupOpenCloseOverridesOptions != null && !options.PickupOpenCloseOverridesOptions.AreEqual(PickupOpenCloseOverridesOptions))
return false;
if (options.PickupServiceWindowOverridesOptions != null && !options.PickupServiceWindowOverridesOptions.AreEqual(PickupServiceWindowOverridesOptions))
return false;
if (options.DeliveryServiceWindowOverridesOptions != null && !options.DeliveryServiceWindowOverridesOptions.AreEqual(DeliveryServiceWindowOverridesOptions))
return false;
if (options.ServiceWindowOverridesOptions != null && !options.ServiceWindowOverridesOptions.AreEqual(ServiceWindowOverridesOptions))
return false;
if (options.LineItemsOptions != null && !options.LineItemsOptions.AreEqual(LineItemsOptions))
return false;
Краткое изложение: я в основном проверяю, является ли объект нулевым, если не использует метод расширения, чтобы определить, равен ли аналогичный объект.(Я не переопределяю isEquals и getHashCode).если объект нулевой, я не могу вызвать метод расширения areEquals, так что проверка необходима.