Question

  

Doublons possibles:    Les avantages d'utiliser le conditionnel: (ternaire) opérateur
   est l'opérateur conditionnel lent?

Salut à tous,

J'ai une question assez simple en ce qui concerne les différentes if / else.

En dehors de l'écriture de code moins, sont-il d'autres avantages pour l'utilisation de l'opérateur conditionnel, par opposition à la pleine instruction if / else?

Y at-il une augmentation des performances, moins de code compilé, ou toute autre chose qui pourrait me tirer profit lors de son utilisation?

apprécie votre aide

Marko

Était-ce utile?

La solution

Ne pas se concentrer sur écrit moins de code ... se concentrer sur le code vous finissez d'être plus lisibles .

Parfois, une déclaration if sera plus lisible. Parfois, l'opérateur conditionnel sera plus lisible. Je aime l'opérateur conditionnel dans les cas où il est logique, en termes de différentes façons de calculer une valeur logique (par exemple une réduction, en fonction de l'âge d'un client). Je ne aime pas l'utiliser de façon alambiquée bien -. Il n'y a rien de mal à l'utilisation d'un plein if / else où il est logique

Il faut se rappeler l'opérateur null coalescent trop ... donc au lieu de:

string shipTo = customer.ShippingAddress != null 
              ? customer.ShippingAddress : customer.BillingAddress;

vous pouvez utiliser

string shipTo = customer.ShippingAddress ?? customer.BillingAddress;

Encore une fois, il est utile que dans certaines situations -. Mais dans ces cas, il est vraiment pratique

Autres conseils

  

En dehors de l'écriture de code moins, sont-il d'autres avantages pour l'utilisation de l'opérateur ternaires, par opposition à la pleine instruction if / else?

Une meilleure lisibilité, dans certains cas ... Je pense que tout est.

  

Y at-il une augmentation des performances, moins de code compilé, ou anyhing autre qui pourrait me tirer profit lors de son utilisation?

Non, rien de significatif. Je pense qu'il va compiler habituellement au même IL quand même ...

Alors finalement, vous ne devez baser votre choix sur la lisibilité. Quand il est plus facile à lire pour écrire un complet if / else, faites-le. Si elle est une expression de ternaire très simple qui est facile à lire, allez-y.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top