Perkiraan tingkat pengetahuan yang dibutuhkan: Pencarian Sintaks Java dan sedikit Java Core.
Di akhir pencarian JavaRush pertama kita belajar tentang konversi tipe. Dalam kuliah level 10, Anda dapat melihat bahwa mengonversi int
menjadi String
sangat sederhana, dan secara umum, hampir semua tipe primitif dapat dikonversi String
tanpa masalah.
int x = 5;
String text = "X=" + x;
Selain itu, mereka yang telah menyelesaikan misi Sintaks Java level 10 mengetahui bahwa tidak mungkin mengubah referensi ke angka menjadi referensi ke string. Jadi apa cara terbaik untuk mengubah string menjadi bilangan bulat primitif? Lebih baik melakukan ini dengan menggunakan metode parseInt
kelas Integer
. Metode ini parseInt
harus mengonversi String
dan int
memunculkan pengecualian NumberFormatException
jika string tidak dapat dikonversi ke tipe int
.
Contoh
Baris dasar yang mengubah string menjadi bilangan bulat:
int i = Integer.parseInt (myString);
Jika string yang dilambangkan dengan variabel myString
adalah bilangan bulat yang valid, seperti "1", "200", Java akan secara diam-diam mengubahnya menjadi tipe data primitif int
. Jika karena alasan tertentu ini gagal, tindakan seperti itu mungkin menimbulkan pengecualian NumberFormatException
, jadi agar program dapat bekerja dengan benar untuk string apa pun, kita memerlukan lebih banyak kode. Sebuah program yang mendemonstrasikan metode konversi Java String
ke int
, kontrol untuk kemungkinan NumberFormatException
:
public class JavaStringToIntExample
{
public static void main (String[] args)
{
String s = "100";
try
{
int i = Integer.parseInt(s.trim());
System.out.println("int i = " + i);
}
catch (NumberFormatException nfe)
{
System.out.println("NumberFormatException: " + nfe.getMessage());
}
}
Diskusi
Saat Anda mempelajari contoh di atas, Anda akan melihat bahwa metode ini Integer.parseInt (s.trim ())
digunakan untuk mengubah string s
menjadi bilangan bulat i
, dan ini terjadi pada baris kode berikut:
int i = Integer.parseInt (s.trim ())
Namun terkadang mengubah string menjadi angka tidak berhasil. Dalam contoh kita, string tersebut adalah nama fred. Kita dapat berbicara tentang kode di mana huruf ditulis di komputer, tetapi, secara formal, fred bukanlah angka, dan lebih baik membiarkannya sebagai string. Program kami dirancang sedemikian rupa sehingga jika Anda mencoba mengonversi "fred" menjadi angka, prosesnya Integer parseInt
akan memunculkan pengecualian NumberFormatException
, yang harus Anda tangani dalam satu blok try / catch
. Dalam hal ini Anda tidak harus menggunakan metode trim ()
kelas String
, tetapi dalam pemrograman nyata Anda harus menggunakannya. Jadi kami menunjukkannya kepada Anda. Sejak topik ini muncul, berikut adalah beberapa “petunjuk” tentang topik kelas String
dan Integer
:
Integer.toString (int i)
digunakan untuk mengonversi int
ke string Java.
- Jika Anda ingin mengonversi objek
String
menjadi objek Integer
(bukan kelas primitif int
), gunakan metode valueOf ()
di kelas alih-alih Integer
metode parseInt ()
.
- Jika Anda perlu mengonversi string ke kolom Java primitif tambahan, gunakan metode seperti ini
Long.parseLong ()
.
Dijawab oleh: Alice Watson
GO TO FULL VERSION