Rumah >Java >javaTutorial >Mengapa Bahagian Integer dalam Java Mengembalikan 0.0 dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung Berformat?

Mengapa Bahagian Integer dalam Java Mengembalikan 0.0 dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung Berformat?

Barbara Streisand
Barbara Streisandasal
2024-12-01 04:11:08534semak imbas

Why Does Integer Division in Java Return 0.0 and How Can I Get a Formatted Floating-Point Result?

Pembahagian Integer dalam Java: Memahami 0.0 Keputusan dan Pemformatan Rentetan

Di Java, pembahagian dua integer sentiasa menghasilkan nilai integer . Akibatnya, jika dua integer, seperti pembolehubah totalOptCount dan totalRespCount, dibahagikan, hasilnya akan menjadi nombor bulat. Ini menerangkan mengapa ungkapan (float)(totalOptCount/totalRespCount); konsisten mengembalikan 0.0.

Membetulkan Ungkapan untuk Hasil Titik Terapung

Untuk mendapatkan hasil titik terapung bagi pembahagian, anda mesti secara eksplisit menghantar sekurang-kurangnya satu operan ke jenis titik terapung sebelum operasi bahagi. Ini boleh dicapai menggunakan ungkapan berikut:

float percentage = ((float) totalOptCount) / totalRespCount;

Dengan membuang dividen (iaitu, totalOptCount) kepada jenis titik terapung, operasi bahagi dilakukan dalam aritmetik titik terapung, menghasilkan terapung- nilai mata (cth., 0.33).

Memformatkan Nilai Titik Terapung menjadi String

Untuk memformat peratusan nilai titik terapung ke dalam format "00.00" dan menukarnya menjadi rentetan, anda boleh menggunakan kaedah String.format():

String str = String.format("%2.02f", percentage);

Dalam rentetan format ini, %2.02f menunjukkan bahawa rentetan harus diformatkan sebagai nombor titik terapung dengan lebar medan minimum dua aksara dan ketepatan dua tempat perpuluhan.

Dengan mengikuti pembetulan ini, anda boleh memastikan operasi bahagi menghasilkan hasil titik terapung yang diingini, yang kemudiannya boleh ditukar kepada rentetan yang diformatkan untuk paparan atau tujuan lain.

Atas ialah kandungan terperinci Mengapa Bahagian Integer dalam Java Mengembalikan 0.0 dan Bagaimana Saya Boleh Mendapatkan Keputusan Titik Terapung Berformat?. 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