Dalam artikel ini, kami akan memberikan gambaran ringkas tentang kelas Matematik di Jawa. Mari kita bincangkan tentang kaedah kelas ini dan cara menggunakannya. Kelas Matematik berada dalam pakej java.lang dan menyediakan satu set kaedah statik untuk melaksanakan beberapa pengiraan matematik yang berbeza. Berikut ialah contoh pengiraan yang mana kelas Matematik mungkin berguna:
- Pengiraan nilai mutlak (nilai modulo)
- Pengiraan nilai fungsi trigonometri (sinus, kosinus, dll.)
- Ketinggian kepada pelbagai darjat
- Mengeluarkan akar pelbagai darjah
- Penjanaan nombor rawak
- Membundarkan
- Dan lain-lain.
- abs berganda statik (berganda a)
- abs terapung statik (apung a)
- int statik abs(int a)
- abs panjang statik (panjang a)
public static void main(String[] args) {
System.out.println(Math.abs(-1)); // 1
System.out.println(Math.abs(-21.8d)); // 21.8
System.out.println(Math.abs(4532L)); // 4532
System.out.println(Math.abs(5.341f)); // 5.341
}
Mengira nilai fungsi trigonometri
Kelas Matematik membolehkan anda mengira pelbagai fungsi trigonometri - sinus, kosinus, tangen, dll. Senarai lengkap kaedah boleh didapati di laman web dokumentasi rasmi . Di bawah ialah senarai kaedah ini:- dosa berganda statik (berganda a)
- cos berganda statik (berganda a)
- tan berganda statik (berganda a)
- asin berganda statik (berganda a)
- acos berganda statik (berganda a)
- atan berganda statik (berganda a)
- berganda statik kepada Darjah (ganda angrad)
- berganda statik kepadaRadian (angdeg berganda)
public static void main(String[] args) {
System.out.println(Math.sin(Math.toRadians(0)));
System.out.println(Math.sin(Math.toRadians(30)));
System.out.println(Math.sin(Math.toRadians(90)));
System.out.println(Math.cos(Math.toRadians(0)));
System.out.println(Math.cos(Math.toRadians(30)));
System.out.println(Math.cos(Math.toRadians(90)));
}
Program ini akan mengeluarkan:
0.0
0.49999999999999994
1.0
1.0
0.8660254037844387
6.123233995736766E-17
Yang tidak sepadan dengan jadual sinus dan kosinus, sebahagiannya disebabkan oleh kesilapan dalam menukar daripada darjah kepada radian.
Eksponensiasi
Untuk menaikkan nombor kepada kuasa, kelas Matematik menyediakan kaedah pow, yang mempunyai tandatangan berikut:static double pow(double a, double b)
Kaedah ini menaikkan parameter `a` kepada kuasa `b`. Contoh:
public static void main(String[] args) {
System.out.println(Math.pow(1,2)); // 1.0
System.out.println(Math.pow(2,2)); // 4.0
System.out.println(Math.pow(3,2)); // 9.0
System.out.println(Math.pow(4,2)); // 16.0
System.out.println(Math.pow(5,2)); // 25.0
System.out.println(Math.pow(1,3)); // 1.0
System.out.println(Math.pow(2,3)); // 8.0
System.out.println(Math.pow(3,3)); // 27.0
System.out.println(Math.pow(4,3)); // 64.0
System.out.println(Math.pow(5,3)); // 125.0
}
Pengekstrakan akar
Kelas Matematik menyediakan kaedah untuk mengambil punca kuasa dua dan punca kuasa dua. Kaedah berikut bertanggungjawab untuk prosedur ini:- sqrt berganda statik(double a)
- cbrt berganda statik (berganda a)
public static void main(String[] args) {
System.out.println(Math.sqrt(4)); // 2.0
System.out.println(Math.sqrt(9)); // 3.0
System.out.println(Math.sqrt(16)); // 4.0
System.out.println(Math.cbrt(8)); // 2.0
System.out.println(Math.cbrt(27)); // 3.0
System.out.println(Math.cbrt(125)); // 5.0
}
Penjanaan nombor rawak
Untuk menjana nombor rawak, kelas Matematik menyediakan kaedah rawak. Kaedah ini menjana nombor nyata (berganda) positif rawak dalam julat dari 0.0 hingga 1.0. Tandatangan kaedah kelihatan seperti ini:public static double random()
Mari lihat contoh:
public static void main(String[] args) {
for (int i = 0; i < 5; i++) {
System.out.println(Math.random());
}
}
Selepas melaksanakan kaedah utama, perkara berikut dipaparkan pada konsol:
0.37057465028778513
0.2516253742011597
0.9315649439611121
0.6346725713527239
0.7442959932755443
Dengan sedikit manipulasi, anda boleh menggunakan kaedah rawak kelas Matematik untuk mendapatkan nombor rawak integer yang terletak dalam julat tertentu. Berikut ialah contoh fungsi yang mengambil dua hujah min dan maks dan mengembalikan integer rawak yang terletak dalam julat dari min (inklusif) hingga maks (inklusif):
static int randomInARange(int min, int max) {
return (int) (Math.random() * ((max - min) + 1)) + min;
}
Mari kita tulis kaedah Utama di mana kita akan menguji kaedah rawakInARange:
public class MathExample {
public static void main(String[] args) {
// Карта, в которой мы будем хранить количество выпадений Howого-то числа
Map<Integer, Integer> map = new TreeMap<>();
// За 10000 операций
for (int i = 0; i < 10000; i++) {
// Сгенерируем рандомное число от -10 включительно до 10 включительно
final Integer randomNumber = randomInARange(-10, 10);
if (!map.containsKey(randomNumber)) {
// Если карта еще не содержит "выпавшего случайного числа"
// Положим его в карту с кол-вом выпадений = 1
map.put(randomNumber, 1);
} else {
// Иначе, увеличим количество выпадений данного числа на 1
map.put(randomNumber, map.get(randomNumber) + 1);
}
}
// Выведем на экран содержимое карты в формате ключ=[meaning]
for (Map.Entry<Integer, Integer> entry : map.entrySet()){
System.out.println(String.format("%d=[%d]", entry.getKey(), entry.getValue()));
}
}
static int randomInARange(int min, int max) {
return (int) (Math.random() * ((max - min) + 1)) + min;
}
}
Selepas menjalankan kaedah utama, output mungkin kelihatan seperti ini:
-10=[482]
-9=[495]
-8=[472]
-7=[514]
-6=[457]
-5=[465]
-4=[486]
-3=[500]
-2=[490]
-1=[466]
0=[458]
1=[488]
2=[461]
3=[470]
4=[464]
5=[463]
6=[484]
7=[479]
8=[459]
9=[503]
10=[444]
Process finished with exit code 0
Membundarkan
Untuk membundarkan nombor dalam Java, salah satu alat ialah kaedah kelas Matematik. Lebih tepat lagi, kaedah bulat, siling dan lantai:- pusingan panjang statik (berganda a)
- bulat int statik (apung a)
- lantai dua statik (double a)
- siling berkembar statik (berganda a)
public static void main(String[] args) {
System.out.println(Math.round(1.3)); // 1
System.out.println(Math.round(1.4)); // 1
System.out.println(Math.round(1.5)); // 2
System.out.println(Math.round(1.6)); // 2
System.out.println(Math.floor(1.3)); // 1.0
System.out.println(Math.floor(1.4)); // 1.0
System.out.println(Math.floor(1.5)); // 1.0
System.out.println(Math.floor(1.6)); // 1.0
System.out.println(Math.ceil(1.3)); // 2.0
System.out.println(Math.ceil(1.4)); // 2.0
System.out.println(Math.ceil(1.5)); // 2.0
System.out.println(Math.ceil(1.6)); // 2.0
}
Kesimpulan
Dalam artikel ini, kami melihat secara cetek kelas Matematik. Kami melihat bagaimana menggunakan kelas ini anda boleh:- Kira modulo nilai;
- Kira nilai fungsi trigonometri;
- Naikkan nombor kepada kuasa;
- Ekstrak akar persegi dan kubus;
- Hasilkan nombor rawak;
- Nombor bulat.
GO TO FULL VERSION