Table des matières
Comment fonctionne NumberFormatException en Java ?
Constructeurs
Exemples pour implémenter NumberFormatException en Java
Exemple n°1
Example #2
Conclusion
Maison Java javaDidacticiel NumberFormatException en Java

NumberFormatException en Java

Aug 30, 2024 pm 04:14 PM
java

Le NumberFormatException est une exception non vérifiée en Java qui se produit lorsqu'un utilisateur tente de convertir une chaîne en valeur numérique. NumberFormatException est une classe intégrée à Java définie dans le package Java.lang.NumberFormatException. La classe IllegalArgumentException est une superclasse de NumberFormatException car il s'agit d'une exception non vérifiée, elle n'est donc pas obligée de la gérer et de la déclarer. L'exception NumberFormatException est en fait levée par les fonctions parseXXX() lorsque les fonctions ne sont pas capables de convertir ou de formater (convertir) une chaîne en valeur numérique comme un entier, un flottant, un double, etc., car le format d'une chaîne d'entrée est illégal et non approprié. . Par exemple, dans un programme Java, la saisie de l'utilisateur est parfois acceptée via des arguments de ligne de commande sous forme de champ de texte sous la forme d'une chaîne. Et pour utiliser cette chaîne dans certaines opérations arithmétiques, elle doit d'abord analyser ou convertir en types de données (type numérique spécifique) en utilisant les fonctions parseXXX() des classes wrapper.

Commencez votre cours de développement de logiciels libres

Développement Web, langages de programmation, tests de logiciels et autres

La hiérarchie de la classe NumberFormatException est :

Objet ->Lavable -> Exception ->RuntimeException ->NumberFormatException.

Syntaxe

Ce qui suit est la déclaration pour java.io. Classe PrintWriter.

public class NumberFormatException extends IllegalArgumentException implements Serializable
{
// Constructors of the NumberFormatException class
}

Ce qui précède est la syntaxe de NumberFormatException, où elle est étendue à :

IllegalArgumentException class and implements Serializable

Comment fonctionne NumberFormatException en Java ?

Lorsqu'une tentative est faite pour convertir une chaîne en nombre, l'exception NumberFormatException se produit. Ce type de conversions est effectué à l'aide de fonctions telles que Integer.parseInt(), Float.parseFloat() et toutes. Supposons que nous appelions la fonction Integer.parseInt(s) où s est un type de chaîne et sa valeur est la chaîne « 30 », de sorte que la fonction convertit correctement la valeur de la chaîne en un int 30. Mais que s'est-il passé ? Si la valeur de s est supposée « trente », ce qui est illégal, alors la fonction échoue et lève une exception : NumberFormatException. Pour gérer cette exception, nous pouvons écrire le bloc catch correspondant ; si une exception n'est pas gérée, le programme plantera.

Il existe différentes raisons de lancer l'exception NumberFormatException, comme nous pouvons le voir ci-dessous –

  • La chaîne fournie à convertir peut être nulle. Ex :Integer.parseInt(null);
  • La chaîne fournie peut être de longueur nulle. Ex :Integer.parseInt("");
  • La chaîne fournie ne contient peut-être pas de caractères numériques. Ex:Integer.parseInt(« Trente »);
  • La chaîne fournie peut ne pas représenter une valeur entière. Ex :Integer.parseInt("FG67");
  • T La chaîne fournie peut être vide. Ex :Integer.parseInt("");
  • La chaîne fournie peut être un espace de fin. Ex :Integer.parseInt("785");
  • La chaîne fournie peut être un espace de début. Ex :Integer.parseInt(” 785 “);
  • La chaîne fournie peut contenir des caractères alphanumériques. Ex :Long.parseLong("F5");
  • La chaîne fournie peut être un type de données pris en charge hors plage. Ex : Integer.parseInt("139");
  • La chaîne fournie et la fonction utilisée pour convertir peuvent être de types de données différents.Ex :Integer.parseInt(“3.56”);

Constructeurs

  • NumberFormatException() : Ce constructeur crée l'exceptionNumberFormatException sans message spécifique détaillé.
  • NumberFormatException(String s): Ce constructeur crée l'exception NumberFormatException avec le message spécifique en détail.

Exemples pour implémenter NumberFormatException en Java

Voici des exemples à mettre en œuvre :

Exemple n°1

Ensuite, nous écrivons le code Java pour comprendre plus clairement l'exception NumberFormatException avec l'exemple suivant dans lequel nous créons un objet PrintWriter en utilisant le constructeur de classe PrintWriter et transmettons le nom du fichier pour y écrire, comme ci-dessous –

Code :

//package p1;
import java.util.Scanner;
public class Demo
{
public static void main( String[] arg) {
int age;
Scanner sc = new Scanner(System.in);
System.out.println("Please Enter your age : ");
//throws Exception as if the input string is of illegal format for parsing as it as null or alphanumeric.
age = Integer.parseInt(sc.next());
System.out.println("Your age is : " +age);
}
}

Sortie :

Lorsque l'utilisateur saisit « 25+ », une sortie du code ci-dessus est :

NumberFormatException en Java

Lorsqu'un utilisateur ne saisit pas la chaîne « 25F » bien formatée, le résultat est :

NumberFormatException en Java

Lorsqu'un utilisateur saisit une chaîne « Vingt-cinq », le résultat est :

NumberFormatException en Java

Lorsqu'un utilisateur saisit une chaîne « null », le résultat est :

NumberFormatException en Java

Lorsqu'un utilisateur saisit une valeur de chaîne sous la forme d'un flottant « 40,78 », le résultat est :

NumberFormatException en Java

When the user enters a string “25”, which is a valid string. The output is:

NumberFormatException en Java

Explanation: As in the above code, the age value is accepted from the user in string format, which further converts into the integer format by using the Integer.parseInt(sc.next()) function. While the user an illegal input string or not a well-formatted string, the NumberFormatException occurs, it throws, and the program terminates unsuccessfully. So to provide the valid string, it should be taken care that an input string should not be null, check an argument string matches the type of the conversion function used and also check if any unnecessary spaces are available; if yes, then trim it and so all care must be taken.

Example #2

Next, we write the java code to understand the NumberFormatException where we generate the NumberFormatException and handle it by using the try-catch block in the program, as below –

Code:

//package p1;
import java.util.Scanner;
public class Demo
{
public static void main( String[] arg) {
int age;
Scanner sc = new Scanner(System.in);
try
{
System.out.println("Please Enter your age : ");
//throws Exception as if the input string is of illegal format for parsing as it as null or alphanumeric.
age = Integer.parseInt(sc.next());
System.out.println("Your age is : " +age);
} catch(NumberFormatException e)
{
System.out.println("The NumberFormatExceptionoccure.");
System.out.println("Please enter the valid age.");
}
}
}

When the user enters a string “23F”, the output is:

NumberFormatException en Java

When a user enters a string “23”, the output is:

NumberFormatException en Java

Explanation: As in the above code try-catch block is used. It is always a good practice to enclose lines of code that can throw an exception in a try-catch block by which it handles the NumberFormatException and prevents it from generating the Exception.

Conclusion

The NumberFormatException in java is an unchecked exception that occurs when a not well-formatted string is trying to converts into a numeric value by using the parseXXX() functions. The NumberFormatException is a built-in class in which is defined in the Java.lang.NumberFormatException package.

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!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

Video Face Swap

Video Face Swap

Échangez les visages dans n'importe quelle vidéo sans effort grâce à notre outil d'échange de visage AI entièrement gratuit !

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Qu'est-ce qu'une impasse en Java et comment pouvez-vous l'empêcher? Qu'est-ce qu'une impasse en Java et comment pouvez-vous l'empêcher? Aug 23, 2025 pm 12:55 PM

ADEADLOCKINJAVAOCCURSWHENTWOORMORORETHREADSAREBLOCKEDEDFOREVERS, chaque avance pour la fourniture de laBerce-Organisation de la manière générale;

Comment utiliser facultatif en Java? Comment utiliser facultatif en Java? Aug 22, 2025 am 10:27 AM

UseOptional.Empty (), facultatif.of (), andoptional.ofnullable () toCreateOptionalistances adepsendingonwherethevaluesabsent, non null, orpossibly null.2.Checkforvalussafelyusingispresent () orpreférall

Java Persistance avec les données de printemps JPA et Hibernate Java Persistance avec les données de printemps JPA et Hibernate Aug 22, 2025 am 07:52 AM

Le noyau de SpringDatajpa et Hibernate travaillant ensemble est: 1. JPA est la spécification et Hibernate est la mise en œuvre, l'encapsulation SpringDatajpa simplifie le développement DAO; 2. 3. L'interface du référentiel hérite de JParepository pour implémenter automatiquement les méthodes CRUD et nommées de requête; 4. Requêtes complexes Utilisez @Query Annotation pour prendre en charge JPQL ou SQL native; 5. Dans Springboot, l'intégration est terminée en ajoutant des dépendances de démarrage et en configurant les sources de données et les attributs JPA; 6. Les transactions sont effectuées par @transactiona

Java Cryptography Architecture (JCA) pour le codage sécurisé Java Cryptography Architecture (JCA) pour le codage sécurisé Aug 23, 2025 pm 01:20 PM

Comprendre les composants de base JCA tels que MessagediGest, Cipher, KeyGenerator, SecureRandom, Signature, Keystore, etc., qui mettent en œuvre des algorithmes via le mécanisme du fournisseur; 2. Utilisez des algorithmes et des paramètres forts tels que SHA-256 / SHA-512, AES (clé 256 bits, mode GCM), RSA (2048 bits ou supérieur) et SecureRandom; 3. Évitez les clés à code dur, utilisez des clés pour gérer les clés et générez des clés via des mots de passe dérivés en toute sécurité tels que PBKDF2; 4. Désactiver le mode ECB, adopter des modes de chiffrement d'authentification tels que GCM, utiliser des IV aléatoires uniques pour chaque cryptage et des caissiers clairs dans le temps

Correction: Windows affiche 'un privilège requis n'est pas détenu par le client' Correction: Windows affiche 'un privilège requis n'est pas détenu par le client' Aug 20, 2025 pm 12:02 PM

RunTheApplicationorCommandasAdministratorByRight-ClickingandSelectation "RunasAdministrator" ToenSureElevatedPrivileges agration.

Comment utiliser les classes de modèle et de correspondance en Java? Comment utiliser les classes de modèle et de correspondance en Java? Aug 22, 2025 am 09:57 AM

La classe de motif est utilisée pour compiler des expressions régulières, et la classe de correspondance est utilisée pour effectuer des opérations correspondantes sur les chaînes. La combinaison des deux peut réaliser la recherche de texte, la correspondance et le remplacement; Créez d'abord un objet Pattern via motifs.compile (), puis appelez sa méthode Matcher () pour générer une instance de correspondance. Ensuite, utilisez des matches () pour juger la correspondance complète de la chaîne, trouver () pour trouver des sous-séquences, remplacer () ou remplacerFirst () pour le remplacement. Si le habitué contient un groupe de capture, la nth de contenu du groupe peut être obtenue via le groupe (n). Dans les applications réelles, vous devez éviter les modèles de compilation répétés, faire attention aux évasions de caractères spéciales et utiliser le drapeau de modèle d'appariement selon les besoins, et finalement atteindre efficace

Les paramètres de jeu lol n'enregistrent pas après la fermeture [fixe] Les paramètres de jeu lol n'enregistrent pas après la fermeture [fixe] Aug 24, 2025 am 03:17 AM

IfleagueoflegendSettingSaren’ssaving, tryTheSesteps: 1.RunthegameasAdministrator.2.grantfullfolderpermissionstotheagueoflegendDirectory.3.Editandensuregame.cfgisn’Tread-only.4.DisableCloudsyNcfortaGamefolder.5.

'Java n'est pas reconnue' Erreur dans CMD [3 étapes simples] 'Java n'est pas reconnue' Erreur dans CMD [3 étapes simples] Aug 23, 2025 am 01:50 AM

IfjavaisnotRecognizedIncmd, assurez-vous, assurez-vous, établit, setthejava_homevariabbletothejdkpath, andddthejdk'sbinfoldertothesystemPath.restartcmdandrunjava-versiontoConfirm.

See all articles