Di Java, anda sering menghadapi senario yang memerlukan penukaran jenis data Menukar data jenis String kepada jenis Int ialah senario yang agak biasa Terdapat dua kaedah penukaran utama:
1 Gunakan kaedah Integer.parseInt(String)
2 Gunakan kaedah Integer.valueOf(String)
Demo khusus adalah seperti berikut:
public void convert() { // 1.使用Integer.parseInt(String) String str1 = "31"; Integer num1 = Integer.parseInt(str1); System.out.print("字符串31转换为数字:"); System.out.println(num1); // 2.使用Integer.valueOf(String) String str2 = "32"; Integer num2 = Integer.valueOf(str2); System.out.print("字符串32转换为数字:"); System.out.println(num2); }
Hasil pelaksanaan:
Mengikut pelaksanaan keputusan, dua Kedua-dua kaedah boleh melengkapkan penukaran daripada rentetan kepada integer. NotaTetapi perlu diingatkan bahawa terdapat prasyarat untuk menggunakan kedua-dua kaedah ini, iaitukandungan rentetan yang hendak ditukar mestilah nombor tulen .
Tidak sukar untuk mencari rentetan yang hendak ditukar dalam demo di atas adalah semua rentetan terdiri daripada nombor tulen seperti "31" dan "32 jika aksara lain selain nombor muncul dalam rentetan menjadi". ditukar, , program akan membuang pengecualian. Seperti yang ditunjukkan dalam tunjuk cara di bawah, tambahkan huruf Inggeris huruf kecil pada rentetan dan bungkus segmen kod dengan pernyataan cuba-tangkap untuk menangkap pengecualian yang mungkin berlaku. (Oleh kerana kita sudah tahu bahawa menukar rentetan dengan huruf kepada integer akan menyebabkan pengecualian penukaran format digital, jadi kami memilih untuk menangkap NumberFormatException)public void convert() { // 1.Integer.parseInt(String) try { String str1 = "31a"; Integer num1 = Integer.parseInt(str1); System.out.print("字符串31a转换为数字:"); System.out.println(num1); } catch (NumberFormatException e) { System.out.println("Integer.parseInt(String)方法执行异常"); e.printStackTrace(); } // 1.Integer.valueOf(String) try { String str2 = "32b"; Integer num2 = Integer.valueOf(str2); System.out.print("字符串32b转换为数字:"); System.out.println(num2); } catch (NumberFormatException e) { System.out.println("Integer.valueOf(String)方法执行异常"); e.printStackTrace(); } }
dan tidak boleh ditukar kepada jenis integer .
Perbandingan prestasiKita boleh menggunakan System.nanoTime() untuk melihat perbezaan masa pelaksanaan antara kedua-dua kaedahpublic static void convert() { // 1.Integer.parseInt(String) String str1 = "321"; long before1 = System.nanoTime(); Integer.parseInt(str1); long interval1 = System.nanoTime() - before1; System.out.print("Integer.parseInt(String)的执行时长(纳秒):"); System.out.println(interval1); // 1.Integer.valueOf(String) String str2 = "332"; long before2 = System.nanoTime(); Integer.valueOf(str2); long interval2 = System.nanoTime() - before2; System.out.print("Integer.valueOf(String)的执行时长(纳秒):"); System.out.println(interval2); }
Atas ialah kandungan terperinci Bagaimana untuk menukar String ke Int dalam Java. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!