Prévenir l'exception NumberFormatException pour les non-entiers
Lors du traitement de données numériques, il est crucial de gérer les situations dans lesquelles la valeur numérique attendue est manquante ou non. numérique. En Java, l'exception NumberFormatException se produit lorsque vous essayez d'analyser une chaîne non numérique en un entier.
Considérez le scénario suivant :
java.lang.NumberFormatException: For input string: "N/A" ...
Cette exception indique que la chaîne "N/A" ne peut pas être interprété comme un nombre entier. Pour éviter cela, il existe deux stratégies principales :
Gestion des exceptions
Dans cette approche, nous vérifions explicitement les valeurs non numériques potentielles avant de tenter d'analyser la chaîne :
try { int i = Integer.parseInt(input); } catch (NumberFormatException ex) { // Handle the exception (e.g., log error, provide user feedback) }
Si la chaîne n'est pas numérique, le bloc d'exception sera exécuté, vous permettant de gérer la situation gracieusement.
Correspondance de modèles
Alternativement, nous pouvons utiliser les capacités d'expression régulière de Java pour vérifier si la chaîne correspond au format entier attendu :
String input = ...; String pattern = "-?\d+"; if (input.matches(pattern)) { // The string is an integer } else { // The string is not an integer }
Le motif "-?d" correspond à n'importe quel entier positif ou négatif, garantissant que nous procédons à l'analyse uniquement si la chaîne est valide.
En appliquant l'une ou l'autre méthode, vous pouvez empêcher l'exception NumberFormatException et vous assurer que votre code gère les valeurs non numériques de manière appropriée.
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!