# Πώς να μετατρέψετε μια συμβολοσειρά σε int στη Java

Αν θέλετε να μετατρέψετε μια συμβολοσειρά σε int στη Java, έχετε δύο απλές επιλογές – `parseInt()` και `valueOf()`. Ωστόσο, και οι δύο αυτές επιλογές λειτουργούν μόνο αν η συμβολοσειρά περιέχει αποκλειστικά ακέραιους αριθμούς και δεν υπερβαίνει το εύρος τιμών του τύπου δεδομένων int.

## Τι είναι η μετατροπή συμβολοσειράς σε ακέραιο αριθμό στη Java;

[Οι συμβολοσειρές Java](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/symboloseires-java/) είναι συνενώσεις που μπορούν να περιέχουν χαρακτήρες, ψηφία και ειδικούς χαρακτήρες. Στη γλώσσα προγραμματισμού Java, τα ψηφία με τη μορφή ακέραιων τιμών μπορούν να αποθηκευτούν ως int. Εάν έχετε μια συμβολοσειρά που περιέχει μόνο ακέραιους αριθμούς, μπορείτε να τη μετατρέψετε σε [Java primitive](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/protogeneis-typoi-java/) int, που σημαίνει ακέραιος αριθμός. Ενώ υπάρχουν 5 διαφορετικοί τρόποι για να μετατρέψετε ένα [Java int σε συμβολοσειρά](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/java-int-se-string/), υπάρχουν μόνο **2 βασικοί τρόποι για να μετατρέψετε μια συμβολοσειρά Java σε int**. Είναι `Integer parseInt()` και `Integer.valueOf()`. Παρακάτω θα εξηγήσουμε πώς λειτουργούν αυτές οι μέθοδοι χρησιμοποιώντας πρακτικά παραδείγματα.

Note Σημειώστε ότι αυτή η μετατροπή θα λειτουργήσει μόνο αν ο αριθμός βρίσκεται μεταξύ **-2147483648 και 2147483647**. Αριθμοί μεγαλύτεροι ή μικρότεροι δεν μπορούν να αναπαρασταθούν χρησιμοποιώντας τον τύπο δεδομένων int.

## Πώς να χρησιμοποιήσετε `Integer.parseInt()`

`parseInt()` είναι μια **στατική μέθοδος** που ανήκει στην κλάση Integer και επιστρέφει την αριθμητική τιμή του σύνθετου τύπου δεδομένων string με τη μορφή του πρωτόγονου τύπου δεδομένων int. Η σύνταξή της έχει ως εξής:

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

Ας δούμε ένα παράδειγμα. Πρώτα θα αρχικοποιήσουμε μια συμβολοσειρά που περιέχει την τιμή «7312» και τίποτα άλλο. Στη συνέχεια, θα μετατρέψουμε αυτή τη συμβολοσειρά Java σε έναν ακέραιο αριθμό χρησιμοποιώντας `parseInt()` και, τέλος, θα εμφανίσουμε το αποτέλεσμα χρησιμοποιώντας την εντολή Java `System.out.println`. Ο κώδικας θα έχει την ακόλουθη μορφή:

```java
public class Main {
	public static void main(String args[]) {
		String str = "7312";
		int number = Integer.parseInt(str);
		System.out.println("The numerical value of the string is: " + number);
	}
}
```

Ακολουθεί το αποτέλεσμα:

```java
The numerical value of the string is: 7312
``
However, this only works if the string exclusively **contains whole numbers**. If it contains anything else, you’ll get an error message:
```java
public class Main {
public static void main(String args[]) {
String str = "The number is 7312";
int number = Integer.parseInt(str);
System.out.println("The number from the string is: " + number);
}
}
```

</div>Αυτό είναι το μήνυμα σφάλματος:

<div class="prism-container position-relative my-4" data-ctype="commonmark_content">```java
Exception in thread "main" java.lang.NumberFormatException: For input string: " The number is 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)
```

</div>## Πώς να χρησιμοποιήσετε `Integer.valueOf()`

`Integer.valueOf()`μια άλλη μέθοδος από την κλάση Integer. Εμφανίζει την **δεκαδική ερμηνεία ενός αντικειμένου string** και είναι επομένως χρήσιμο για τη μετατροπή ενός string Java σε int. Η σύνταξή του έχει ως εξής:

<div class="prism-container position-relative my-4" data-ctype="commonmark_content">```java
static int valueOf(int a)
```

</div>Ας δούμε ένα απλό παράδειγμα:

<div class="prism-container position-relative my-4" data-ctype="commonmark_content">```java
public class Main {
public static void main(String args[]) {
String newString = "7312";
int parNumber = Integer.valueOf(newString);
System.out.println("The numerical value of the string is: " + parNumber);
}
}
```

</div>Θα λάβετε και πάλι το ακόλουθο αποτέλεσμα:

<div class="prism-container position-relative my-4" data-ctype="commonmark_content">```java
The numerical value of the string is: 7312
```

Εάν η συμβολοσειρά περιέχει οτιδήποτε εκτός από έναν ακέραιο αριθμό, θα λάβουμε το ίδιο μήνυμα σφάλματος όπως παραπάνω.


This is a markdown version of: [https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/java-string-se-int/](https://www.ionos.com/el-gr/digitalguide/istoselides/anaptyxi-istoselidon/java-string-se-int/) for AI/LLM consumption.