Java ir bijusi vairākas uzlabotas lietošanas lietojumprogrammas, tostarp darbs ar sarežģītiem aprēķiniem fizikā, arhitektūra / struktūru projektēšana, darbs ar Maps un atbilstošajiem platuma / garuma grādiem utt.
Šajā apmācībā jūs uzzināsiet:
- Math.abs
- Matemātika.apkārt
- Math.ceil & Math.foror
- Math.min
Visām šādām lietojumprogrammām ir nepieciešams izmantot sarežģītus aprēķinus / vienādojumus, kas ir garlaicīgi manuāli. Programmiski šādi aprēķini ietvertu logaritmu, trigonometrijas, eksponenciālo vienādojumu utt. Izmantošanu.
Tagad nevar būt, ka visas žurnāla vai trigonometrijas tabulas ir kodētas kaut kur lietojumprogrammā vai datos. Dati būtu milzīgi un sarežģīti uzturami.
Java šim nolūkam nodrošina ļoti noderīgu klasi. Tā ir matemātikas java klase (java.lang.Math).
Šajā klasē ir norādītas metodes tādu darbību veikšanai kā eksponenciāls, logaritms, saknes un trigonometriskie vienādojumi.
Apskatīsim Java Math klases piedāvātās metodes.
Divi matemātikas pamatelementi ir “e” (dabiskā logaritma pamats) un “pi” (apļa apkārtmēra un tā diametra attiecība). Šīs divas konstantes bieži tiek prasītas iepriekšminētajos aprēķinos / operācijās.
Tādējādi matemātikas klases java nodrošina šīs divas konstantes kā dubultus laukus.
Math.E - vērtība ir 2,718281828459045
Math.PI - vērtība ir 3,141592653589793
A) Apskatīsim zemāk redzamo tabulu, kas parāda pamatmetodes un tās aprakstu
Metode | Apraksts | Argumenti |
abs | Atgriež argumenta absolūto vērtību | Divkāršs, peldošs, int, garš |
raunds | Atgriež slēgto int vai long (kā norādīts argumentā) | dubultā vai peldoša |
griesti | Atgriež mazāko veselu skaitli, kas ir lielāks vai vienāds ar argumentu | Dubultā |
stāvā | Atgriež lielāko skaitli, kas ir mazāks vai vienāds ar argumentu | Dubultā |
min | Atgriež mazāko no diviem argumentiem | Divkāršs, peldošs, int, garš |
maks | Atgriež lielāko no diviem argumentiem | Divkāršs, peldošs, int, garš |
Zemāk ir norādīta iepriekš minēto metožu koda ieviešana:
Piezīme. Nav jāimportē java.lang.Math kā netieši importēts. Visas tā metodes ir statiskas.
Integer mainīgais
int i1 = 27;int i2 = -45;
Divkāršie (decimālie) mainīgie
double d1 = 84.6;double d2 = 0.45;
Math.abs
public class Guru99 {public static void main(String args[]) {int i1 = 27;int i2 = -45;double d1 = 84.6;double d2 = 0.45;System.out.println("Absolute value of i1: " + Math.abs(i1));System.out.println("Absolute value of i2: " + Math.abs(i2));System.out.println("Absolute value of d1: " + Math.abs(d1));System.out.println("Absolute value of d2: " + Math.abs(d2));}}Izeja:
Absolute value of i1: 27Absolute value of i2: 45Absolute value of d1: 84.6Absolute value of d2: 0.45
Matemātika.apkārt
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("Round off for d1: " + Math.round(d1));System.out.println("Round off for d2: " + Math.round(d2));}}Izeja:
Round off for d1: 85Round off for d2: 0
Math.ceil & Math.foror
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("Ceiling of '" + d1 + "' = " + Math.ceil(d1));System.out.println("Floor of '" + d1 + "' = " + Math.floor(d1));System.out.println("Ceiling of '" + d2 + "' = " + Math.ceil(d2));System.out.println("Floor of '" + d2 + "' = " + Math.floor(d2));}}Izeja:
Ceiling of '84.6' = 85.0Floor of '84.6' = 84.0Ceiling of '0.45' = 1.0Floor of '0.45' = 0.0
Math.min
public class Guru99 {public static void main(String args[]) {int i1 = 27;int i2 = -45;double d1 = 84.6;double d2 = 0.45;System.out.println("Minimum out of '" + i1 + "' and '" + i2 + "' = " + Math.min(i1, i2));System.out.println("Maximum out of '" + i1 + "' and '" + i2 + "' = " + Math.max(i1, i2));System.out.println("Minimum out of '" + d1 + "' and '" + d2 + "' = " + Math.min(d1, d2));System.out.println("Maximum out of '" + d1 + "' and '" + d2 + "' = " + Math.max(d1, d2));}}Izeja:
Minimum out of '27' and '-45' = -45Maximum out of '27' and '-45' = 27Minimum out of '84.6' and '0.45' = 0.45Maximum out of '84.6' and '0.45' = 84.6
B) Apskatīsim zemāk redzamo tabulu, kas parāda mums eksponenciālās un logaritmiskās metodes un to aprakstu.
Metode | Apraksts | Argumenti |
exp | Atgriež dabiskā žurnāla (e) pamatu kā argumenta spēku | Dubultā |
Žurnāls | Atgriež argumenta dabisko žurnālu | dubultā |
Pow | Tiek ņemti 2 argumenti kā ievade un atgriež pirmā izvirzītā argumenta vērtību kā otrā argumenta spēku | Dubultā |
stāvā | Atgriež lielāko skaitli, kas ir mazāks vai vienāds ar argumentu | Dubultā |
Sqrt | Atgriež argumenta kvadrātsakni | Dubultā |
Tālāk ir norādīta iepriekš minēto metožu koda ieviešana: (tiek izmantoti tie paši mainīgie kā iepriekš)
public class Guru99 {public static void main(String args[]) {double d1 = 84.6;double d2 = 0.45;System.out.println("exp(" + d2 + ") = " + Math.exp(d2));System.out.println("log(" + d2 + ") = " + Math.log(d2));System.out.println("pow(5, 3) = " + Math.pow(5.0, 3.0));System.out.println("sqrt(16) = " + Math.sqrt(16));}}Izeja:
exp(0.45) = 1.568312185490169log(0.45) = -0.7985076962177716pow(5, 3) = 125.0sqrt(16) = 4.0
C) Apskatīsim zemāk redzamo tabulu, kurā parādītas trigonometriskās metodes un to apraksts.
Metode | Apraksts | Argumenti |
Grēks | Atgriež norādītā argumenta sinusu | Dubultā |
Cos | Atgriež norādītā argumenta kosinusu | dubultā |
Iedegums | Atgriež norādītā argumenta tangentu | Dubultā |
Atan2 | Pārvērš taisnstūra koordinātas (x, y) par polārām (r, teta) un atgriež teta | Dubultā |
grādiem | Pārvērš argumentus grādos | Dubultā |
Sqrt | Atgriež argumenta kvadrātsakni | Dubultā |
toRadians | Pārvērš argumentus par radiāniem | Dubultā |
Noklusētie argumenti ir radiānos
Zemāk ir koda ieviešana:
public class Guru99 {public static void main(String args[]) {double angle_30 = 30.0;double radian_30 = Math.toRadians(angle_30);System.out.println("sin(30) = " + Math.sin(radian_30));System.out.println("cos(30) = " + Math.cos(radian_30));System.out.println("tan(30) = " + Math.tan(radian_30));System.out.println("Theta = " + Math.atan2(4, 2));}}Izeja:
sin(30) = 0.49999999999999994cos(30) = 0.8660254037844387tan(30) = 0.5773502691896257Theta = 1.1071487177940904
Izmantojot iepriekš minēto, jūs varat arī izveidot savu zinātnisko kalkulatoru java valodā.