Méthode Java Double parseDouble

JavaJavaBeginner
Pratiquer maintenant

💡 Ce tutoriel est traduit par l'IA à partir de la version anglaise. Pour voir la version originale, vous pouvez cliquer ici

Introduction

La méthode Java parseDouble() est utilisée pour convertir des valeurs de chaîne en leurs équivalents en double. Cette méthode est importante lorsqu'il s'agit de la conversion de types de données. Dans ce laboratoire, nous allons apprendre comment utiliser la méthode parseDouble() et comment elle convertit une valeur de chaîne en son équivalent en double.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL java(("Java")) -.-> java/SystemandDataProcessingGroup(["System and Data Processing"]) java(("Java")) -.-> java/BasicSyntaxGroup(["Basic Syntax"]) java(("Java")) -.-> java/StringManipulationGroup(["String Manipulation"]) java(("Java")) -.-> java/ProgrammingTechniquesGroup(["Programming Techniques"]) java(("Java")) -.-> java/ObjectOrientedandAdvancedConceptsGroup(["Object-Oriented and Advanced Concepts"]) java(("Java")) -.-> java/FileandIOManagementGroup(["File and I/O Management"]) java/BasicSyntaxGroup -.-> java/output("Output") java/BasicSyntaxGroup -.-> java/type_casting("Type Casting") java/StringManipulationGroup -.-> java/strings("Strings") java/ProgrammingTechniquesGroup -.-> java/method_overloading("Method Overloading") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/user_input("User Input") java/ObjectOrientedandAdvancedConceptsGroup -.-> java/exceptions("Exceptions") java/FileandIOManagementGroup -.-> java/io("IO") java/SystemandDataProcessingGroup -.-> java/string_methods("String Methods") subgraph Lab Skills java/output -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/type_casting -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/strings -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/method_overloading -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/user_input -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/exceptions -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/io -.-> lab-117627{{"Méthode Java Double parseDouble"}} java/string_methods -.-> lab-117627{{"Méthode Java Double parseDouble"}} end

Implémentez la syntaxe de la méthode parseDouble()

Dans votre programme Java, implémentez la syntaxe suivante de la méthode parseDouble() :

public static double parseDouble(String s) throws NumberFormatException

Utilisez la méthode parseDouble() pour convertir une valeur de chaîne en une valeur de type double

Dans cette étape, nous allons convertir une valeur de chaîne en son équivalent en double à l'aide de la méthode parseDouble().

Bloc de code :

String str = "8.97";
double num = Double.parseDouble(str);
System.out.println("Double value of "+str+" is "+num);

Cela produira la sortie suivante :

Double value of 8.97 is 8.97

Dans le bloc de code ci-dessus, nous avons créé une variable de chaîne str et l'initialisé avec la valeur "8.97". Ensuite, nous avons appelé la méthode parseDouble(), en passant la variable de chaîne en tant qu'argument, et avons affecté la valeur de type double renvoyée à la variable de type double num. Enfin, nous avons affiché la variable de type double.

Capturer l'exception NumberFormatException possible

Dans cette étape, nous allons capturer l'exception NumberFormatException pour éviter des problèmes inattendus.

Bloc de code :

try {
   String str = "not a number"; // exception se produit ici
   double num = Double.parseDouble(str);
   System.out.println("Double value of "+str+" is "+num);
} catch(NumberFormatException e) {
   System.out.println("Error: "+e.getMessage()+" is not a valid double");
}

Cela produira la sortie suivante :

Error: For input string: "not a number" is not a valid double

Dans le bloc de code ci-dessus, la méthode Double.parseDouble() est appelée avec une chaîne "not a number", qui n'est pas une valeur de type double valide. Étant donné que la méthode parseDouble() lance une NumberFormatException, nous avons utilisé un bloc try-catch pour capturer toute exception qui pourrait se produire dans le programme.

Acceptation de l'entrée utilisateur

Dans cette étape, nous allons accepter l'entrée utilisateur à l'aide de la classe Scanner et la convertir en une valeur de type double à l'aide de la méthode parseDouble().

Bloc de code :

Scanner input = new Scanner(System.in);
System.out.print("Enter a number: ");
String str = input.next();
double num = Double.parseDouble(str);
System.out.println("Double value of "+str+" is "+num);

Cela produira la sortie suivante :

Enter a number: 9.56
Double value of 9.56 is 9.56

Dans le bloc de code ci-dessus, nous avons créé une instance de la classe Scanner pour accepter l'entrée utilisateur. Nous avons utilisé la méthode next() pour lire l'entrée utilisateur sous forme d'une valeur de chaîne, puis nous l'avons passée à la méthode parseDouble() et affecté la valeur renvoyée à la variable de type double num. Enfin, nous avons affiché la variable de type double.

Gestion des valeurs nulles

Dans cette étape, nous allons gérer les valeurs nulles passées à la méthode parseDouble().

Bloc de code :

String str = null;
try {
   double num = Double.parseDouble(str); // exception se produit ici
   System.out.println(num);
} catch (NullPointerException e) {
   System.out.println("Error: "+e.getMessage()+" - Il n'est pas possible de convertir null en valeur de type double");
}

Cela produira la sortie suivante :

Error: null - Il n'est pas possible de convertir null en valeur de type double

Dans le bloc de code ci-dessus, nous avons affecté une valeur null à la variable de chaîne str. Ensuite, nous avons appelé la méthode parseDouble() et passé la valeur null en tant qu'argument, ce qui provoque une NullPointerException. Nous avons utilisé un bloc try-catch pour attraper la NullPointerException et afficher un message personnalisé.

Revoyons le code complet

À ce stade, notre code devrait ressembler à ceci :

import java.util.Scanner;

public class JavaDoubleParseDoubleMethod {
   public static void main(String[] args) {
      // Exemple 1
      String str = "8.97";
      double num = Double.parseDouble(str);
      System.out.println("Double value of "+str+" is "+num);

      // Exemple 2
      try {
         String str2 = "not a number";
         double num2 = Double.parseDouble(str2);
         System.out.println("Double value of "+str2+" is "+num2);
      } catch(NumberFormatException e) {
         System.out.println("Error: "+e.getMessage()+" is not a valid double");
      }

      // Exemple 3
      Scanner input = new Scanner(System.in);
      System.out.print("Enter a number: ");
      String str3 = input.next();
      double num3 = Double.parseDouble(str3);
      System.out.println("Double value of "+str3+" is "+num3);

      // Exemple 4
      String str4 = null;
      try {
         double num4 = Double.parseDouble(str4);
         System.out.println(num4);
      } catch (NullPointerException e) {
         System.out.println("Error: "+e.getMessage()+" - It's not possible to convert null to double value");
      }
   }
}

Compiler et exécuter le programme Java

Pour compiler et exécuter le programme Java, exécutez les commandes suivantes :

cd ~/projet
javac JavaDoubleParseDoubleMethod.java
java JavaDoubleParseDoubleMethod

Cela exécutera le programme Java et produira la sortie suivante :

Double value of 8.97 is 8.97
Error: For input string: "not a number" is not a valid double
Enter a number: 9.56
Double value of 9.56 is 9.56
Error: null - It's not possible to convert null to double value

Récapitulatif

Dans ce laboratoire, nous avons appris à utiliser la méthode parseDouble() pour convertir des valeurs de chaîne en leurs équivalents de type double. Nous avons également appris à gérer les exceptions et les valeurs nulles dans la méthode. Cette méthode est très utile lorsqu'on travaille avec des valeurs de chaîne et des calculs numériques en Java.