Vérification efficace des chaînes entières en Java
Vérifier si une chaîne peut être convertie en entier est une tâche courante dans le développement de logiciels. L'approche standard implique l'utilisation de la méthode Integer.parseInt() dans un bloc try-catch. Cependant, cette méthode peut être lente lors du traitement de données non entières.
Vérification d'entiers personnalisés
Une approche alternative consiste à implémenter une fonction personnalisée qui parcourt la chaîne et valide chaque caractère comme suit :
public static boolean isInteger(String str) { if (str == null) { return false; } int length = str.length(); if (length == 0) { return false; } int i = 0; if (str.charAt(0) == '-') { if (length == 1) { return false; } i = 1; } for (; i < length; i++) { char c = str.charAt(i); if (c < '0' || c > '9') { return false; } } return true; }
Cette fonction vérifie si la chaîne est nulle, vide, a un signe négatif non significatif et se compose uniquement de chiffres.
Comparaison des performances
L'analyse comparative révèle que la fonction personnalisée surpasse Integer.parseInt() d'environ 20 à 30 fois pour les données non entières. Bien qu'Integer.parseInt() reste plus rapide pour les chaînes entières valides, la fonction personnalisée offre des avantages de vitesse significatifs lorsqu'il s'agit de traiter de grandes quantités de données pouvant contenir des nombres non entiers.
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!