V tomto programu se naučíme převádět proměnné typu String na celé číslo (int) v Javě.
Abychom porozuměli tomuto příkladu, měli byste znát následující programovací témata Java:
- Datové typy Java (primitivní)
- Řetězec Java
Příklad 1: Program Java pro převod řetězce na int pomocí parseInt ()
class Main ( public static void main(String() args) ( // create string variables String str1 = "23"; String str2 = "4566"; // convert string to int // using parseInt() int num1 = Integer.parseInt(str1); int num2 = Integer.parseInt(str2); // print int values System.out.println(num1); // 23 System.out.println(num2); // 4566 ) )
Ve výše uvedeném příkladu jsme použili parseInt()metodu Integertřídy k převodu řetězcových proměnných na int.
Zde Integerje obálka třídy v Javě. Chcete-li se dozvědět více, navštivte třídu Java Wrapper.
Poznámka : Řetězcové proměnné by měly představovat inthodnoty. Jinak kompilátor vyvolá výjimku. Například,
class Main ( public static void main(String() args) ( // create a string variable String str1 = "Programiz"; // convert string to int // using parseInt() int num1 = Integer.parseInt(str1); // print int values System.out.println(num1); // throws NumberFormatException ) )
Příklad 2: Program Java pro převod řetězce na int pomocí valueOf ()
Můžeme také převést řetězcové proměnné na objekt Integerpomocí valueOf()metody. Například,
class Main ( public static void main(String() args) ( // create string variables String str1 = "643"; String str2 = "1312"; // convert String to int // using valueOf() int num1 = Integer.valueOf(str1); int num2 = Integer.valueOf(str2); // print int values System.out.println(num1); // 643 System.out.println(num2); // 1312 ) )
Ve výše uvedeném příkladu valueOf()metoda Integertřídy převádí řetězcové proměnné na int.
Zde valueOf()metoda ve skutečnosti vrátí objekt Integertřídy. Objekt je však automaticky převeden na primitivní typ. Tomu se v Javě říká unboxing. Chcete-li se dozvědět více, navštivte autoboxing a unboxing prostředí Java.
To znamená,
// valueOf() returns object of Integer // object is converted onto int int num1 = Integer obj = Integer.valueOf(str1)








