Wenn du programmierst, musst du oft zwischen verschiedenen Datentypen wechseln – zum Beispiel von einem String, der eine Zahl darstellt, zu einer echten ganzen Zahl (Integer). In diesem Tutorial zeige ich dir, wie du das in vier populären Programmiersprachen machst: Java, TypeScript, Python und C#.
1. Java
In Java musst du die Methode Integer.parseInt() verwenden, um einen String in eine Integerzahl zu konvertieren.
String str = "42";
int number = Integer.parseInt(str);
System.out.println(number); // Ausgabe: 42
⚠️ Wichtig: Wenn der String keine gültige Zahl ist (z. B. „abc“), wird eine NumberFormatException ausgelöst. Um dies zu vermeiden, kannst du die Methode try-catch umhüllen:
String str = "42";
try {
int number = Integer.parseInt(str);
System.out.println(number); // Ausgabe: 42
} catch (NumberFormatException e) {
System.out.println("Ungültige Zahl");
}
2. TypeScript
In TypeScript (JavaScript mit Typen) kannst du parseInt() oder Number() verwenden. Allerdings ist es ratsam, die Rückgabewerte explizit zu typisieren.
Variante 1: parseInt()
let str = "42";
let number = parseInt(str);
console.log(number); // Ausgabe: 42
⚠️ parseInt() gibt NaN zurück, wenn der String nicht als Zahl interpretiert werden kann.
Variante 2: Number() mit Typüberwachung
let str = "42";
let number: number = Number(str);
console.log(number); // Ausgabe: 42
Wenn du sicherstellen möchtest, dass der Wert eine Zahl ist (und nicht NaN), kannst du eine einfache Überprüfung hinzufügen:
function stringToNumber(str: string): number {
const num = Number(str);
if (isNaN(num)) {
throw new Error("Ungültige Zahl");
}
return num;
}
let str = "42";
console.log(stringToNumber(str)); // Ausgabe: 42
3. Python
Python macht das Konvertieren von String zu Integer sehr einfach mit der int() Funktion.
str = "42"
number = int(str)
print(number) # Ausgabe: 42
Wenn der String nicht als Zahl interpretiert werden kann (z. B. „abc“), wird eine ValueError ausgelöst:
str = "42"
try:
number = int(str)
print(number) # Ausgabe: 42
except ValueError:
print("Ungültige Zahl")
4. C#
In C# verwendest du die int.Parse() oder int.TryParse() Methode.
Variante 1: int.Parse()
string str = "42";
int number = int.Parse(str);
Console.WriteLine(number); // Ausgabe: 42
Variante 2: int.TryParse() (sicherer, gibt false zurück, wenn es fehlschlägt)
string str = "42";
if (int.TryParse(str, out int number)) {
Console.WriteLine(number); // Ausgabe: 42
} else {
Console.WriteLine("Ungültige Zahl");
}
TryParse() ist die empfohlene Methode, wenn du nicht sicher bist, ob der String eine gültige Zahl ist.
Zusammenfassung
| Sprache | Methode/Technik | Hinweis |
|---|---|---|
| Java | Integer.parseInt() | Exception bei ungültigen Werten |
| TypeScript | parseInt() / Number() | Rückgabewerte explizit typisieren |
| Python | int() | ValueError bei ungültigen Werten |
| C# | int.Parse() / TryParse() | TryParse ist sicherer und empfohlen |
Tipps für den Alltag
- Immer prüfen, ob die Konvertierung erfolgreich war, besonders wenn du die Eingabe des Benutzers verarbeitest.
- In C# und Java nutze
TryParseodertry-catch, um Exceptions zu vermeiden. - In Python ist
int()einfach, abertry-exceptempfehlenswert. - In TypeScript ist
Number()gut, aberparseInt()kannNaNliefern – überprüfe immer mitisNaN().
Bonus: Was passiert bei Sonderfällen?
| Eingabe | Java | TypeScript | Python | C# |
|---|---|---|---|---|
| „42“ | 42 | 42 | 42 | 42 |
| „0“ | 0 | 0 | 0 | 0 |
| „-13“ | -13 | -13 | -13 | -13 |
| „abc“ | Exception | NaN | ValueError | Exception |
| „3.14“ | Exception | NaN | ValueError | Exception |