Umwandeln eines Strings in eine Fließkommazahl (double)
In diesem Schritt werden Sie lernen, wie Sie in Java einen String
, der eine Zahl repräsentiert, in einen double
-Wert umwandeln. Dies ist eine häufige Aufgabe, wenn Sie numerische Eingaben als Text erhalten, beispielsweise von Benutzereingaben oder beim Lesen aus einer Datei. Die Double
-Klasse bietet eine statische Methode namens parseDouble()
speziell für diesen Zweck.
Erstellen Sie eine neue Java-Datei namens StringtoDouble.java
in Ihrem ~/project
-Verzeichnis. Verwenden Sie den Dateiexplorer der WebIDE, um diese Datei zu erstellen.
Öffnen Sie StringtoDouble.java
und fügen Sie folgenden Code hinzu:
public class StringtoDouble {
public static void main(String[] args) {
// A string representing a double value
String doubleString = "987.65";
// Another string representing a double value
String anotherDoubleString = "3.14159";
// A string that is not a valid double
String invalidDoubleString = "hello";
// Parse the strings to double values
try {
double parsedDouble1 = Double.parseDouble(doubleString);
double parsedDouble2 = Double.parseDouble(anotherDoubleString);
System.out.println("Parsed double from \"" + doubleString + "\": " + parsedDouble1);
System.out.println("Parsed double from \"" + anotherDoubleString + "\": " + parsedDouble2);
// Attempt to parse an invalid string (This will cause an error)
// double parsedDouble3 = Double.parseDouble(invalidDoubleString);
// System.out.println("Parsed double from \"" + invalidDoubleString + "\": " + parsedDouble3);
} catch (NumberFormatException e) {
System.out.println("Error parsing string: " + e.getMessage());
}
}
}
In diesem Code:
- Wir haben zwei Strings,
doubleString
und anotherDoubleString
, die gültige Darstellungen von Fließkommazahlen enthalten.
- Wir haben auch
invalidDoubleString
, der keine gültige Zahl repräsentiert.
- Wir verwenden
Double.parseDouble()
, um die gültigen Strings in primitive double
-Werte umzuwandeln.
- Wir umschließen den Parsing-Code in einem
try-catch
-Block. Dies ist wichtig, denn wenn der String nicht in eine gültige Fließkommazahl umgewandelt werden kann (wie invalidDoubleString
), wirft parseDouble()
eine NumberFormatException
. Der catch
-Block behandelt diesen Fehler gracefully.
Speichern Sie die StringtoDouble.java
-Datei.
Jetzt kompilieren und führen wir das Programm aus. Öffnen Sie das Terminal und stellen Sie sicher, dass Sie sich im ~/project
-Verzeichnis befinden.
Kompilieren Sie den Code:
javac StringtoDouble.java
Führen Sie den kompilierten Code aus:
java StringtoDouble
Sie sollten eine Ausgabe ähnlich der folgenden sehen:
Parsed double from "987.65": 987.65
Parsed double from "3.14159": 3.14159
Wenn Sie die Zeilen, die versuchen, invalidDoubleString
zu parsen, einkommentieren und den Code erneut ausführen, würden Sie die Fehlermeldung aus dem catch
-Block sehen, was zeigt, wie das Programm ungültige Eingaben behandelt.
Dieser Schritt zeigt Ihnen, wie Sie String-Darstellungen von Zahlen in tatsächliche double
-Werte umwandeln können, was eine entscheidende Fähigkeit für die Verarbeitung von Eingaben in Ihren Java-Programmen ist.