Rumah > Java > javaTutorial > Bagaimana untuk Membundarkan Gandaan dengan betul kepada Dua Tempat Perpuluhan di Jawa?

Bagaimana untuk Membundarkan Gandaan dengan betul kepada Dua Tempat Perpuluhan di Jawa?

Mary-Kate Olsen
Lepaskan: 2024-11-30 07:35:16
asal
672 orang telah melayarinya

How to Correctly Round Doubles to Two Decimal Places in Java?

Membundarkan kepada Dua Tempat Perpuluhan di Jawa

Ramai pembangun menghadapi cabaran apabila cuba membundarkan nombor titik terapung ke tempat perpuluhan tertentu di Jawa. Ini benar terutamanya apabila output yang dikehendaki mesti kekal dua kali ganda.

Satu pendekatan biasa melibatkan penggunaan Math.round(), seperti yang ditunjukkan dalam kod berikut:

class Round {
    public static void main(String[] args) {

        double a = 123.13698;
        double roundOff = Math.round(a * 100) / 100;
        
        System.out.println(roundOff);
    }
}
Salin selepas log masuk

Walau bagaimanapun, pendekatan ini selalunya gagal membuahkan hasil yang diinginkan. Daripada membundarkan kepada 123.14, ia menghasilkan 123.

Untuk membetulkan isu ini, sedikit pengubahsuaian pada baris 4 diperlukan:

double roundOff = Math.round(a * 100.0) / 100.0;
Salin selepas log masuk

Dengan menambah .0 pada faktor pendaraban, hasilnya dilemparkan kepada dua kali ganda dengan dua tempat perpuluhan. Ini memastikan bahawa keputusan akhir juga mempunyai dua tempat perpuluhan.

Sebagai alternatif, seperti yang dicadangkan oleh @Rufein, seseorang boleh menghantar nilai bulat kepada dua kali ganda:

double roundOff = (double) Math.round(a * 100) / 100;
Salin selepas log masuk

Pendekatan ini juga berkesan menghasilkan output yang diingini 123.14 dengan dua tempat perpuluhan.

Atas ialah kandungan terperinci Bagaimana untuk Membundarkan Gandaan dengan betul kepada Dua Tempat Perpuluhan 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