Je les utilise alternativement, y a-t-il une différence entre eux? P>
5 Réponses :
String implémente le ienumerable code>, il a donc une méthode Nombre code> tandis que longueur code> est une propriété dans la classe de cordes. P>
string.length code> est la propriété "correcte" à utiliser. string.count () code> est juste un ienumerable
Ceci est lié et pourrait répondre à votre question. Vous devez en choisir un et coller avec elle (probablement une longueur dans le cas d'une chaîne simple) p>
sur la surface, ils sembleraient fonctionnellement identiques, mais la principale différence est la suivante: p>
Préoccupations de performance des méthodes énumérables LINQ Nonobstant, utilisez longueur code> est une propriété définie des chaînes et est le moyen habituel de trouver la longueur d'une chaîne p> li>
.Count () code> est implémenté comme méthode d'extension. C'est-à-dire que string.count () code> est vraiment appelé énumérable.count (ce iNeumable , un System.LINQ code> méthode d'extension, étant donné que chaîne code> est vraiment un Séquence de Char Code> s. P> LI>
ul>
longueur code>, car elle est construite directement dans les chaînes. P>
J'étais curieux de la différence de vitesse entre le nombre et la longueur. J'ai cru la longueur serait plus rapide ...
J'ai créé un script simple dans Linqpad pour tester ceci: p> J'ai ajouté une longue chaîne de texte pour tester cela . J'ai noté que je devais les faire dans des points distincts pour obtenir des résultats plus précis pour le deuxième test. Courir à Tandem a toujours abouti à une réponse plus rapide sur le deuxième appel. (Supprimer le commentaire de Dolength Exécutera le test de comptage). P> J'ai mis mes résultats dans des commentaires à côté du si ou d'autre. J'ai été surpris que le comptage s'est avéré plus rapide que la longueur. P> N'hésitez pas à faire vos propres tests. P> P>