Meneroka Kaedah Alternatif untuk Menghuraikan Nilai Int daripada Aksara dalam Rentetan
Apabila bekerja dengan rentetan, kita sering menghadapi situasi di mana kita perlu mengekstrak berangka nilai daripada watak individu. Walaupun kaedah Integer.parseInt(String) yang digunakan secara meluas boleh berkesan, ia mungkin tidak selalu menjadi pendekatan yang paling cekap atau serba boleh. Artikel ini meneroka kaedah alternatif yang menawarkan kelebihan tertentu.
Mari kita anggap kita mempunyai rentetan seperti "el5" dan kita ingin mengekstrak digit 5 daripada aksara pada indeks 2. Menggunakan Integer.parseInt(String), kita boleh menukar aksara kepada rentetan dahulu:
String element = "el5"; String s; s = ""+element.charAt(2); int x = Integer.parseInt(s);
Semasa kaedah ini berfungsi, ia melibatkan langkah penukaran yang tidak perlu. Pendekatan yang lebih langsung ialah menggunakan Character.getNumericValue(char):
String element = "el5"; int x = Character.getNumericValue(element.charAt(2)); System.out.println("x=" + x);
Kod ini menghasilkan hasil yang diharapkan:
x=5
Kelebihan Character.getNumericValue(char) ialah ia mengendalikan perwakilan aksara nombor dengan cara yang lebih komprehensif. Sebagai contoh, dalam contoh berikut:
angka 5 tidak diwakili menggunakan aksara ASCII '5', tetapi sebaliknya oleh persamaan setempatnya. Character.getNumericValue(char) mentafsir aksara ini dengan betul dan mengembalikan nilai berangka yang sepadan. Ini menjadikannya pilihan yang mantap untuk menghuraikan aksara berangka daripada rentetan merentas set aksara dan tempat yang berbeza.
Atas ialah kandungan terperinci Adakah Character.getNumericValue(char) merupakan Alternatif yang Lebih Cekap kepada Integer.parseInt(String) untuk Menghuraikan Digit daripada Rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!