# String to int in Java: Die beiden praktischsten Methoden zur Umwandlung

Wenn Sie in Java eine Umwandlung String to int durchführen möchten, haben Sie zwei einfache Optionen: `parseInt()` und `valueOf()`. Beide funktionieren allerdings nur, wenn der String ausschließlich ganze Zahlen enthält und den Wertebereich des Datentyps Integer nicht übersteigt.

## String-to-int-Operationen in Java

[Java Strings](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-strings/) sind Ketten, die Zeichen, Ziffern oder Sonderzeichen enthalten können. Einzelne Ziffern in Form von ganzzahligen Werten können in der Programmiersprache als Integer (int) gespeichert werden. Wenn Sie einen String verwenden, der lediglich aus Ganzzahlen besteht, können Sie diesen in den [primitiven Java-Datentyp](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-primitives/) Integer umwandeln. Während es für die Umwandlung von [Java int zu String](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-int-to-string/) mindestens fünf praktische Wege gibt, bieten sich bei der gegenteiligen Umwandlung **String to int in Java vor allem zwei Methoden** an: `Integer parseInt()` und `Integer.valueOf()`. Wir erklären Ihnen anhand einiger praktischer Beispiele, wie sie funktionieren.

Hinweis Beachten Sie dabei, dass diese Umwandlung nur funktioniert, solange der Zahlenwert im Bereich zwischen **-2147483648 bis 2147483647** liegt. Größere oder kleinere Zahlen können durch den Datentyp Integer nicht abgebildet werden.

## Die Methode Integer.parseInt()

`parseInt()` ist eine **statische Methode**, die zur Klasse Integer gehört und den Zahlenwert eines komplexen Datentyps String in Form des primitiven Datentyps int zurückgeben kann. Ihre Syntax sieht folgendermaßen aus:

```java
static int parseInt(String s)
```

Ihre Funktionsweise verstehen Sie am besten, wenn wir uns ein kurzes Beispiel für die Methode anschauen. Dafür initiieren wir zunächst einen String, der lediglich den ganzzahligen Wert „7312“ enthält. Dann führen wir eine Java-Operation String to int mit der Methode `parseInt()` durch und nutzen den Java-Befehl `System.out.println`, um uns den Wert ausgeben zu lassen. Hier der entsprechende Code:

```java
public class Main {
	public static void main(String args[]) {
		String str = "7312";
		int nummer = Integer.parseInt(str);
		System.out.println("Der Zahlenwert innerhalb des Strings ist: " + nummer);
	}
}
```

Die Ausgabe lautet:

```java
Der Zahlenwert innerhalb des Strings ist: 7312
```

Dies funktioniert aber nur, wenn der String lediglich **aus ganzen Zahlen besteht**. Ist dies nicht der Fall und Sie führen die Methode `parseInt()` trotzdem durch …

```java
public class Main {
	public static void main(String args[]) {
		String str = "Die gesuchte Zahl ist 7312";
		int nummer = Integer.parseInt(str);
		System.out.println("Der Zahlenwert innerhalb des Strings ist: " + nummer);
	}
}
```

… erhalten Sie diese Fehlermeldung:

```java
Exception in thread "main" java.lang.NumberFormatException: For input string: "Die gesuchte Zahl ist 7312"
at java.base/java.lang.NumberFormatException.forInputString(NumberFormatException.java:67)
at java.base/java.lang.Integer.parseInt(Integer.java:661)
at java.base/java.lang.Integer.parseInt(Integer.java:777)
at Main.main(Main.java:4)
```

## Die Methode Integer.valueOf()

Auch `Integer.valueOf()` ist eine Methode der Klasse Integer. Sie gibt die **dezimale Interpretation eines String-Objekts** aus und eignet sich somit ebenfalls für eine Umwandlung String to int. Ihre Java-Syntax sieht so aus:

```java
static int valueOf(int a)
```

Um ihre Funktionsweise zu veranschaulichen, wählen wir erneut ein einfaches Beispiel:

```java
public class Main {
	public static void main(String args[]) {
		String newString = "7312";
		int parNummer = Integer.valueOf(newString);
		System.out.println("Der Zahlenwert innerhalb des Strings ist: " + parNummer);
	}
}
```

Wir erhalten wieder die folgende Ausgabe:

```java
Der Zahlenwert innerhalb des Strings ist: 7312
```

Die Fehlermeldung, die ausgegeben wird, wenn innerhalb des Strings andere Zeichen hinterlegt sind, entspricht derjenigen im Beispiel zu `parseInt()`.


This is a markdown version of: [https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-string-to-int/](https://www.ionos.com/de-ch/digitalguide/websites/web-entwicklung/java-string-to-int/) for AI/LLM consumption.