Rumah >Java >javaTutorial >Bagaimana Menghuraikan Gandaan dengan Koma sebagai Pemisah Perpuluhan dengan Betul di Jawa?

Bagaimana Menghuraikan Gandaan dengan Koma sebagai Pemisah Perpuluhan dengan Betul di Jawa?

DDD
DDDasal
2024-12-12 22:07:16635semak imbas

How to Correctly Parse Doubles with Comma as Decimal Separator in Java?

Cara Mengendalikan Koma sebagai Pemisah Perpuluhan dalam Penghuraian Berganda

Penggunaan koma sebagai pemisah perpuluhan boleh menyebabkan ralat apabila menggunakan kaedah Double.valueOf() standard. Pertimbangkan kod berikut:

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

Kod ini akan membuang NumberFormatException kerana kehadiran koma. Untuk mengendalikan isu ini, seseorang mungkin mempertimbangkan untuk menggunakan teknik penggantian p = p.replaceAll(",", "."). Walau bagaimanapun, terdapat pendekatan yang lebih cekap dan setempat menggunakan kelas java.text.NumberFormat.

Penyelesaian Menggunakan NumberFormat

Kelas NumberFormat membenarkan penghuraian nombor mengikut kepada tetapan tempat tertentu, termasuk pengendalian pemisah perpuluhan yang berbeza. Begini cara menggunakannya untuk menghuraikan dua kali ganda dengan pemisah koma:

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

Dalam kod ini, NumberFormat.getInstance(Locale.FRANCE) mencipta contoh kelas NumberFormat dengan tempat Perancis, di mana koma biasanya digunakan sebagai pemisah perpuluhan. Kaedah format.parse() kemudian menghuraikan rentetan menjadi objek Nombor, yang boleh ditukar kepada dua kali menggunakan kaedah doubleValue().

Sokongan Berbilang Bahasa

Untuk aplikasi berbilang bahasa, kaedah Locale.getDefault() boleh digunakan untuk mendapatkan tempat lalai pengguna sistem:

NumberFormat format = NumberFormat.getInstance(Locale.getDefault());

Pendekatan ini membolehkan kod menyesuaikan diri dengan tempat pilihan pengguna dan mengendalikan pemisah perpuluhan dengan sewajarnya.

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

Kenyataan:
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