Rumah  >  Artikel  >  Java  >  Bagaimana untuk menukar String ke Int dalam Java

Bagaimana untuk menukar String ke Int dalam Java

王林
王林ke hadapan
2023-05-15 14:22:137734semak imbas

Penggunaan

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:

Bagaimana untuk menukar String ke Int dalam Java

Mengikut pelaksanaan keputusan, dua Kedua-dua kaedah boleh melengkapkan penukaran daripada rentetan kepada integer.

Nota

Tetapi perlu diingatkan bahawa terdapat prasyarat untuk menggunakan kedua-dua kaedah ini, iaitu

kandungan 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();
    }
}

Ia boleh dilihat daripada hasil pelaksanaan bahawa kod ini berada dalam Integer Kaedah .parseInt(String ) dan kedudukan Integer.valueOf(String) mencetuskan NumberFormatException Sebabnya ialah terdapat huruf Inggeris dalam rentetan yang ditukar oleh

dan tidak boleh ditukar kepada jenis integer .

Bagaimana untuk menukar String ke Int dalam Java

Perbandingan prestasi

Kita boleh menggunakan System.nanoTime() untuk melihat perbezaan masa pelaksanaan antara kedua-dua kaedah

public 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);
}

Antaranya , selang1 Nilai dan selang2 masing-masing merujuk kepada perbezaan masa sistem sebelum dan selepas pelaksanaan kedua-dua kaedah Unit adalah nanoSelepas melaksanakannya beberapa kali, ia boleh didapati bahawa masa pelaksanaan Integer. Kaedah valueOf(String) adalah lebih pendek daripada kaedah Integer.parseInt(String) Prestasi yang lebih baik

Bagaimana untuk menukar String ke Int dalam Java

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!

Kenyataan:
Artikel ini dikembalikan pada:yisu.com. Jika ada pelanggaran, sila hubungi admin@php.cn Padam