Maison >Java >javaDidacticiel >Comment conserver les chaînes vides lors du fractionnement d'une chaîne Java ?
Scission de chaîne Java à l'exclusion des valeurs vides
Lors du fractionnement d'une chaîne à l'aide de la méthode split(), les valeurs vides résultant de l'opération de fractionnement sont généralement supprimé du tableau résultant. Cela peut conduire à des résultats inattendus, en particulier lorsque vous travaillez avec des chaînes pouvant contenir des valeurs vides.
Considérez l'extrait de code suivant :
String data = "5|6|7||8|9||"; String[] split = data.split("\|"); System.out.println(split.length);
Dans l'exemple ci-dessus, la sortie attendue est un tableau avec 8 éléments : [5, 6, 7, VIDE, 8, 9, VIDE, VIDE]. Cependant, la sortie réelle n'est que de 6 valeurs, à l'exclusion des valeurs vides.
Pour résoudre ce problème et garantir que les valeurs vides sont incluses dans le tableau résultant, nous pouvons utiliser la version surchargée de la méthode split() qui prend un paramètre de limite supplémentaire défini sur une valeur négative.
String[] split = data.split("\|", -1);
En définissant le paramètre de limite sur -1, nous indiquons qu'il n'y a pas de limite sur le nombre de fois que le modèle de division est appliqué. Cela empêche le comportement par défaut consistant à exclure les chaînes vides de fin du tableau de résultats.
La documentation de la méthode split() indique que si la limite est supérieure à zéro, le modèle sera appliqué jusqu'à cette limite et le tableau résultant aura une longueur ne dépassant pas la limite. Si la limite n'est pas positive, le motif sera appliqué autant de fois que possible et le tableau résultant peut avoir n'importe quelle longueur.
Il est important de noter que le comportement par défaut consistant à exclure les chaînes vides de fin ne s'applique qu'aux chaînes vides. chaînes créées à la suite de l’opération de fractionnement. Si une chaîne vide est déjà présente dans la chaîne d'origine, elle sera toujours incluse dans le tableau résultant.
En comprenant le comportement de la méthode split() et en utilisant efficacement le paramètre limit, nous pouvons contrôler l'inclusion ou l'exclusion des valeurs vides dans le tableau résultant, garantissant que nos opérations de fractionnement produisent les résultats souhaités.
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!