Mengatasi Ralat Ketepatan Titik Terapung di Java dengan Terapung dan Beregu
Jenis data titik terapung seperti terapung dan beregu biasanya digunakan dalam pengaturcaraan, tetapi perwakilan mereka melibatkan had ketepatan yang wujud. Apabila melakukan pengiraan yang melibatkan banyak lelaran, seperti dalam contoh yang diberikan, ralat ketepatan boleh terkumpul.
Cabaran berpunca daripada ketidakupayaan untuk mewakili nilai perpuluhan tertentu dengan sempurna sebagai nombor titik terapung binari. Sebagai contoh, 0.1 ialah pecahan perpuluhan tak terhingga dalam bentuk binari, yang membawa kepada perwakilan terhingga dalam apungan dan berganda.
Untuk mengatasi isu ini, pertimbangkan strategi berikut:
BigDecimal step = new BigDecimal("0.1"); for (BigDecimal value = BigDecimal.ZERO; value.compareTo(BigDecimal.ONE) < 0; value = value.add(step)) { System.out.println(value); }
Dengan memanfaatkan teknik ini, anda boleh mengurangkan pengumpulan ralat ketepatan titik terapung dengan berkesan dalam aplikasi Java anda, memastikan operasi matematik yang tepat dan hasil yang boleh dipercayai.
Atas ialah kandungan terperinci Bagaimanakah Anda Boleh Menangani Ralat Ketepatan Titik Terapung di Jawa dengan Terapung dan Beregu?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!