Rumah > Java > javaTutorial > Bagaimana untuk Menghuraikan Gandaan dengan Cekap dengan Pemisah Perpuluhan Koma di Jawa?

Bagaimana untuk Menghuraikan Gandaan dengan Cekap dengan Pemisah Perpuluhan Koma di Jawa?

Patricia Arquette
Lepaskan: 2024-12-19 12:38:16
asal
770 orang telah melayarinya

How to Efficiently Parse Doubles with Comma Decimal Separators in Java?

Menghuraikan Berganda dengan Pemisah Perpuluhan Koma

Di Java, menggunakan NumberFormat lalai boleh membawa kepada ralat apabila menghuraikan rentetan dengan koma sebagai pemisah perpuluhan. Pertimbangkan kod berikut:

String p = "1,234";
Double d = Double.valueOf(p); 
System.out.println(d);
Salin selepas log masuk

Kod ini akan membuang NumberFormatException. Untuk mengatasi isu ini, penyelesaian yang mudah ialah menggantikan koma dengan noktah menggunakan p.replaceAll(",", "."). Namun, adakah cara yang lebih cekap?

Kaedah Penghuraian yang Lebih Baik dengan java.text.NumberFormat

Kelas java.text.NumberFormat menawarkan penyelesaian yang canggih. Ia membolehkan anda menentukan peraturan pemformatan khusus setempat, memastikan pemisah perpuluhan dikenali dengan betul. Begini cara menggunakan NumberFormat:

NumberFormat format = NumberFormat.getInstance(Locale.FRANCE);
Number number = format.parse("1,234");
double d = number.doubleValue();
Salin selepas log masuk

Dalam kod ini, kami membuat instantiate NumberFormat untuk tempat Perancis, dengan koma digunakan sebagai pemisah perpuluhan. Kaedah parse() menukar rentetan kepada objek Number, yang kemudiannya kita tukar kepada doubleValue().

Sokongan Berbilang Bahasa

Untuk menyokong aplikasi berbilang bahasa, gunakan kod berikut:

NumberFormat format = NumberFormat.getInstance(Locale.getDefault());
Salin selepas log masuk

Ini akan mencipta NumberFormat untuk tempat lalai, yang merupakan tempat operasi pengguna semasa sistem.

Atas ialah kandungan terperinci Bagaimana untuk Menghuraikan Gandaan dengan Cekap dengan Pemisah Perpuluhan Koma di Jawa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan