Rumah  >  Artikel  >  Java  >  Tafsiran dokumentasi Java: Penerangan terperinci kaedah pusingan() kelas Matematik

Tafsiran dokumentasi Java: Penerangan terperinci kaedah pusingan() kelas Matematik

王林
王林asal
2023-11-04 12:02:131736semak imbas

Tafsiran dokumentasi Java: Penerangan terperinci kaedah pusingan() kelas Matematik

Kelas Matematik ialah perpustakaan matematik yang biasa digunakan di Jawa Ia menyediakan banyak fungsi dan pemalar matematik yang biasa digunakan, seperti fungsi trigonometri, fungsi eksponen, pemalar π, dsb. Antaranya, kaedah round() adalah salah satu kaedah yang paling biasa digunakan dalam kelas Matematik. Artikel ini akan menerangkan kaedah round() kelas Matematik secara terperinci, termasuk penggunaannya, fungsi dan contoh kod khusus.

1. Gambaran keseluruhan kaedah bulat()

Kaedah bulat() ialah kaedah statik dalam kelas Matematik Fungsinya adalah untuk membundarkan nombor titik terapung kepada integer terdekat. Sintaks kaedah ini adalah seperti berikut:

public static int round(float a)
public static long round(double a)

Kaedah ini menerima parameter a jenis apungan atau berganda dan mengembalikan integer jenis int atau panjang. Antaranya, apabila bahagian perpuluhan a kurang daripada 0.5, bulatkan a untuk mendapatkan integer; apabila bahagian perpuluhan a lebih besar daripada atau sama dengan 0.5, tambah 1 kepada a dan bulatkan untuk mendapatkan integer.

2. Penggunaan kaedah bulat()

  1. Nombor titik terapung bulat yang tidak memerlukan ketepatan tinggi

Dalam sesetengah senario, kita tidak perlu memproses nombor titik terapung dengan ketepatan tinggi, kita hanya perlu membundarkannya kepada Integer sudah memadai. Pada ketika ini, kita boleh menggunakan kaedah round() kelas Matematik untuk mencapai ini.

Sebagai contoh, kami mempunyai pembolehubah jenis apungan f, nilainya ialah 3.1415926, kami ingin membundarkannya kepada integer, anda boleh menggunakan kod berikut:

float f = 3.1415926f;
int result = Math.round(f);
System.out.println(result);

Hasil larian ialah:

3

Seperti yang dapat dilihat dari hasilnya, 3.1415926 dibundarkan kepada 3.

Begitu juga, untuk pembolehubah jenis berganda, anda juga boleh menggunakan kaedah bulat() kelas Matematik untuk membundarkannya kepada integer. Sebagai contoh, kami mempunyai pembolehubah jenis berganda d, nilainya ialah 123.456789, kami ingin membundarkannya kepada integer, anda boleh menggunakan kod berikut:

double d = 123.456789;
long result = Math.round(d);
System.out.println(result);

Hasil yang sedang dijalankan ialah:

123

Seperti yang dapat dilihat daripada hasilnya , 123.456789 dibundarkan kepada 123.

  1. Anggaran pemprosesan nombor titik terapung

Dalam sesetengah senario, kita perlu melakukan beberapa pemprosesan anggaran nombor titik terapung. Contohnya, dalam simulasi komputer, ketepatan nombor titik terapung adalah terhad, dan beberapa nombor titik terapung mungkin tidak diwakili dengan tepat. Pada ketika ini, kita boleh menganggarkan nombor titik terapung untuk mendekatkannya kepada nilai yang betul.

Sebagai contoh, kita ingin menganggar pembolehubah jenis berganda supaya bahagian titik terapungnya hanya mengekalkan dua tempat perpuluhan. Kita boleh menggunakan kod berikut:

double d = 3.1415926;
double approx = Math.round(d * 100) / 100.0;
System.out.println(approx);

Kod ini mula-mula mendarab d dengan 100, kemudian membundarkannya kepada integer menggunakan kaedah round(), dan akhirnya membahagikannya dengan 100.0 untuk mendapatkan nilai anggaran. Keputusan larian ialah:

3.14

Seperti yang dapat dilihat daripada keputusan, 3.1415926 dianggarkan kepada 3.14.

3. Nota pada kaedah round()

  1. Untuk kes di mana parameter adalah tak terhingga atau NaN, kaedah round() akan mengembalikan parameter itu sendiri.

Sebagai contoh, untuk pembolehubah jenis apungan f, jika nilainya tidak terhingga atau NaN, maka Math.round(f) akan mengembalikan parameter f itu sendiri secara langsung. Sebagai contoh, untuk kod berikut:

float f = Float.POSITIVE_INFINITY;
int result = Math.round(f);
System.out.println(result);

Hasilnya akan dikeluarkan:

2147483647

Memandangkan Float.POSITIVE_INFINITY ialah infiniti positif dan tidak boleh diwakili dalam komputer, Math.round(f) terus mengembalikan f itu sendiri.

Begitu juga, untuk pembolehubah jenis berganda d, jika nilainya tidak terhingga atau NaN, maka Math.round(d) akan mengembalikan parameter d itu sendiri secara langsung.

  1. Untuk kes di mana parameter terlalu besar atau terlalu kecil, kaedah bulat() mungkin menghasilkan keputusan yang tidak normal atau tidak dijangka.

Disebabkan had ruang ingatan komputer, kaedah bulat() mungkin menghasilkan keputusan yang tidak normal atau tidak dijangka untuk nombor titik terapung yang terlalu besar atau terlalu kecil. Contohnya, untuk kod berikut:

double d = 1.23456789E308;
long result = Math.round(d);
System.out.println(result);

Memandangkan 1.23456789E308 melebihi had atas jenis berganda, kod ini akan membuang pengecualian.

Begitu juga, untuk nombor titik terapung yang terlalu kecil, seperti kod berikut:

double d = 1.23456789E-323;
long result = Math.round(d);
System.out.println(result);

Memandangkan 1.23456789E-323 adalah lebih kecil daripada had ketepatan jenis berganda, kod ini akan mengembalikan 0 dan bukannya nilai anggaran yang dijangkakan.

4. Kesimpulan

Melalui contoh kod di atas, kita dapat melihat bahawa kaedah pusingan() kelas Matematik ialah kaedah matematik yang lebih praktikal dengan. Walau bagaimanapun, apabila menggunakan kaedah ini, kita perlu memberi perhatian kepada julat parameter dan keperluan ketepatan untuk mengelakkan keputusan yang tidak normal atau tidak dijangka.

Atas ialah kandungan terperinci Tafsiran dokumentasi Java: Penerangan terperinci kaedah pusingan() kelas Matematik. 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

Artikel berkaitan

Lihat lagi