5 votes

longueur des sous-chaînes

C'est un peu une question de débutant mais le code que j'examine est en production et je ne veux pas casser quoi que ce soit. Donc, juste au cas où : n'est pas

text.Substring(index, length).Length 

est équivalent à juste length ?

(Sauf pour la potentielle ArgumentOutOfRangeException.)

6voto

Polynomial Points 12830

Oui, ce sera exactement la même chose.

1voto

Ash Burlaczenko Points 7918

Ça y ressemble pour moi. Je ne vois aucune raison de l'écrire comme ça.

0voto

dash Points 22583

Voyons ce que cela signifie réellement à l'aide de quelques chiffres :

"Ma chaîne de test groovy".Substring(0, 2).Length == "Ma".Length = 2

"Ma chaîne de test groovy".Substring(4, 2).Length == "ro" = 2

Comme vous le dites, si startIndex + Length > longueur de la chaîne, ou si startIndex n'est pas dans la chaîne, une exception ArgumentOutOfRangeException est levée.

Donc oui, comme tous les autres cas potentiels, une exception est levée.

Je soupçonne l'auteur de ne pas savoir que le cas limite (lorsque startIndex + longueur > fin de la chaîne) déclenche une exception.

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X