Υπάρχουν δύο τρόποι για να μετατρέψετε το String σε Integer στην Java,
- Συμβολοσειρά στο Integer χρησιμοποιώντας Integer.parseInt ()
- Συμβολοσειρά στο Integer χρησιμοποιώντας Integer.valueOf ()
String strTest = “100”;Προσπαθήστε να εκτελέσετε κάποια αριθμητική λειτουργία όπως διαίρεση με 4 - Αυτό σας δείχνει αμέσως ένα σφάλμα συλλογής.
class StrConvert{public static void main(String []args){String strTest = "100";System.out.println("Using String: + (strTest/4));}}
Παραγωγή:
/StrConvert.java:4: error: bad operand types for binary operator '/'System.out.println("Using String: + (strTest/4));
Ως εκ τούτου, πρέπει να μετατρέψετε μια συμβολοσειρά σε int προτού πραγματοποιήσετε αριθμητικές λειτουργίες σε αυτήν
Παράδειγμα 1: Μετατροπή συμβολοσειράς σε ακέραιο χρησιμοποιώντας Integer.parseInt ()
Σύνταξη της μεθόδου parseInt ως εξής:
int= Integer.parseInt( );
Περάστε τη μεταβλητή συμβολοσειράς ως όρισμα.
Αυτό θα μετατρέψει το Java String σε java Integer και θα το αποθηκεύσει στην καθορισμένη ακέραια μεταβλητή.
Ελέγξτε το παρακάτω απόσπασμα κώδικα-
class StrConvert{public static void main(String []args){String strTest = "100";int iTest = Integer.parseInt(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);//This will now show some arithmetic operationSystem.out.println("Arithmetic Operation on Int: " + (iTest/4));}}
Παραγωγή:
Actual String:100Converted to Int:100Arithmetic Operation on Int: 25
Παράδειγμα 2: Μετατροπή συμβολοσειράς σε ακέραιο χρησιμοποιώντας Integer.valueOf ()
Η μέθοδος Integer.valueOf () χρησιμοποιείται επίσης για τη μετατροπή του String σε Integer στην Java.
Ακολουθεί το παράδειγμα κώδικα που δείχνει τη διαδικασία χρήσης της μεθόδου Integer.valueOf ():
public class StrConvert{public static void main(String []args){String strTest = "100";//Convert the String to Integer using Integer.valueOfint iTest = Integer.valueOf(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);//This will now show some arithmetic operationSystem.out.println("Arithmetic Operation on Int: + (iTest/4));}}
Παραγωγή:
Actual String:100Converted to Int:100Arithmetic Operation on Int:25
NumberFormatException
NumberFormatException ρίχνεται Εάν προσπαθήσετε να αναλύσετε μια μη έγκυρη συμβολοσειρά αριθμών. Για παράδειγμα, η συμβολοσειρά «Guru99» δεν μπορεί να μετατραπεί σε ακέραιο.
Παράδειγμα:
public class StrConvert{public static void main(String []args){String strTest = "Guru99";int iTest = Integer.valueOf(strTest);System.out.println("Actual String:"+ strTest);System.out.println("Converted to Int: + iTest);}}
Το παραπάνω παράδειγμα δίνει την ακόλουθη εξαίρεση στην έξοδο:
Exception in thread "main" java.lang.NumberFormatException: For input string: "Guru99"