Maison >développement back-end >C++ >Pourquoi `String.StartsWith()` renvoie-t-il True pour les chaînes vides ?
Pourquoi String.StartsWith() renvoie True pour les préfixes vides
La question se pose de savoir pourquoi la méthode C# string.StartsWith renvoie true lorsque invoqué avec une chaîne vide comme préfixe. Étonnamment, ce comportement s'aligne sur la notion logique d'une chaîne commençant par la chaîne vide.
Selon la définition de la méthode, une chaîne commence par un préfixe si les premiers caractères du préfixe.La longueur de la chaîne correspond à celle du préfixe. Dans le cas d'un préfixe vide, cela signifie que les premiers zéros de la chaîne doivent correspondre à zéro caractère. Puisque cette condition est toujours remplie, string.StartsWith renvoie logiquement vrai pour les préfixes vides.
Une définition alternative de "commence par" serait :
"Une chaîne commence par un préfixe si le premier prefix.Length les caractères de la chaîne, une fois réunis, sont égaux au préfixe. "
En utilisant cette définition, string.StartsWith renverrait également true pour préfixes vides, car un préfixe vide peut être joint à n'importe quel nombre de caractères pour produire la chaîne vide.
Par conséquent, le comportement de string.StartsWith en renvoyant true pour les préfixes vides est à la fois sémantiquement et logiquement cohérent.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!