Maison >Java >javaDidacticiel >Solution à l'exception NumberFormatException en Java
Une exception qui se produit souvent en Java est NumberFormatException. En effet, lors de l'analyse d'une chaîne en nombre, cette exception sera déclenchée si la chaîne contient des caractères non numériques. Cet article présentera la solution à l’exception NumberFormatException.
Dans un formulaire de saisie de chiffres, afin d'éviter que les utilisateurs ne commettent des erreurs, une vérification est généralement requise. Par exemple, vous pouvez utiliser des expressions régulières pour vérifier si la chaîne d'entrée est un nombre. S'il ne s'agit pas d'un nombre, une exception est levée. Voici un exemple :
String input = "abc123"; if (!input.matches("\d+")) { throw new NumberFormatException("输入的不是数字!"); } int num = Integer.parseInt(input);
Dans le programme, s'il est clairement connu que la chaîne d'entrée peut contenir des caractères non numériques, l'exception NumberFormatException peut être résolue par la capture d'exception. Voici un exemple :
String input = "abc123"; try { int num = Integer.parseInt(input); } catch (NumberFormatException e) { System.out.println("输入的不是数字!"); e.printStackTrace(); }
Dans certains cas, afin d'éviter une interruption du programme due à une exception NumberFormatException, vous pouvez définir la valeur par défaut pour convertir une chaîne en nombre. Par exemple, si l'entrée est un caractère nul, le nombre par défaut est 0. Voici un exemple :
String input = ""; int num; try { num = Integer.parseInt(input); } catch (NumberFormatException e) { num = 0; } System.out.println(num); // 输出0
Lors de la conversion d'une chaîne en nombre, vous devez faire attention à savoir si la chaîne d'entrée est vide. Si la chaîne d'entrée est vide, la conversion ne peut pas avoir lieu. Par conséquent, il est recommandé de déterminer d’abord si la chaîne est vide avant d’effectuer l’opération de conversion. Voici un exemple :
String input = ""; if (input != null && input.length() > 0) { int num = Integer.parseInt(input); } else { System.out.println("输入的字符串为空,无法转为数字!"); }
En bref, lorsque vous utilisez des chaînes pour convertir des nombres, faites attention à savoir si les caractères saisis sont des nombres et s'ils sont vides. Si nécessaire, vous pouvez utiliser la capture d'exceptions pour gérer les exceptions NumberFormatException. Grâce à ces méthodes, les exceptions NumberFormatException peuvent être résolues plus efficacement.
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!