Du kan utföra enkla be­räk­ning­ar med Java Math. Det har olika metoder som täcker lo­ga­rit­mer och tri­go­no­me­tri, samt alla grunderna. Syntaxen är relativt enkel, vilket gör den lätt att lära sig.

Vad är Java Math?

Om du vill utföra grund­läg­gan­de numeriska be­räk­ning­ar i Java kan du använda klassen Math. Java-klassen behöver inte im­por­te­ras separat och har många metoder som vi kommer att behandla mer de­tal­je­rat senare i denna artikel.

Math-klassen är inte in­stan­si­e­rad, och dess metoder är endast till­gäng­li­ga statiskt. Klassens två kon­stan­ter är också statiska: Eulers tal (ungefär e = 2,7182818284590), som är grunden för den naturliga lo­ga­rit­men och den naturliga ex­po­nen­ti­el­la funk­tio­nen, och talet Pi (ungefär π = 3,1415926535). Pro­gram­me­rings­språ­kets Math-klass finns i paketet java.lang, och be­räk­nings­re­sul­ta­ten för denna klass är van­ligt­vis av datatypen double.

Hur man utför olika be­räk­ning­ar med Java Math

Det bästa sättet att förstå funk­tio­na­li­te­ten och syntaxen i Java-klassen Math är att använda exempel. Det är lättare att förstå klassen och hur den används i sam­man­hang­et med enskilda metoder. Nedan har vi in­klu­de­rat en rad olika be­räk­ning­ar för att visa hur klassen fungerar.

Bestäm absoluta värden

Om du vill bestämma det absoluta värdet för en parameter kan du använda abs(). Ett absolut värde är avståndet mellan ett tal och 0 eller ett tec­ken­fritt tal. Det innebär att re­sul­ta­tet alltid blir positivt. De datatyper som är tillåtna för denna metod är double, float, int och long. Nedan visar vi hur Math.abs fungerar med ett positivt tal. För utdata i följande exempel använder vi Java-kommandot System.out.println.

public class Main {
public static void main(String args[]) {
int number = +7;
System.out.println ("The original number is: " + number);
System.out.println ("The absolute number is: " + "Math.abs (" + number + ") = " + Math.abs(number));
}
}
java

Re­sul­ta­tet ser ut så här:

The original number is: 7 
The absolute number is: Math.abs ( 7 ) = 7
java

Start­vär­det kan också vara negativt. Re­sul­ta­tet blir ändå positivt. Låt oss se vad som händer när vi gör 7 i exemplet ovan negativt:

public class Main {
public static void main(String args[]) {
int number = -7;
System.out.println ("The original number is: " + number);
System.out.println ("The absolute number is: " + "Math.abs (" + number + ") = " + Math.abs(number));
}
}
java

Re­sul­ta­tet är i stort sett detsamma som i fö­re­gå­en­de exempel:

The original number is: -7 
The absolute number is: Math.abs( -7 ) = 7
java

Metoden ignorerar tecknet på det negativa heltalet (-7) och ger 7 som resultat.

Bestäm det största värdet

Använd metoden max() för att bestämma det större värdet av två in­gångs­vär­den. Så här fungerar det:

public class Main {
public static void main(String args[]) {
double number = Math.max(3, 9);
System.out.println ("The larger number is: " + number);
}
}
java

Re­sul­ta­tet är:

The larger number is: 9.0
java

Bestäm det minsta värdet

Koden för att bestämma ett mindre värde liknar koden i fö­re­gå­en­de exempel. Använd metod min() för att göra detta:

public class Main {
public static void main(String args[]) {
double number = Math.min(3, 9);
System.out.println ("The smaller number is: " + number);
}
}
java

Här är re­sul­ta­tet:

The smaller number is: 3.0
java

Beräkna effekter

De tidigare exemplen var ganska enkla, men det finns mer avan­ce­ra­de be­räk­ning­ar som Java-klassen Math kan utföra. Du kan till exempel också beräkna potenser. Metoden för att beräkna potenser kallas pow(). Med den här metoden måste vi först definiera en bas och en exponent innan vi utför be­räk­ning­en.

public class Main {
public static void main(String args[]) {
double base = 4;
double exponent = 2;
double power = Math.pow(base, exponent);
System.out.println ("The result is: " + power);
}
}
java

Så här kommer re­sul­ta­tet att se ut:

The result is: 16.0
java

Beräkna kvadratröt­ter

Klassen kan också användas för be­räk­ning­ar av kvadra­tro­ten med sqrt() -metoden. I följande exempel beräknar vi kvadra­tro­ten av 64:

public class Main {
public static void main(String args[]) {
double number = 64;
double root = Math.sqrt(number);
System.out.println ("The result is: " + root);
}
}
java

Detta är re­sul­ta­tet:

The result is: 8.0
java

Generera slumptal

Med metoden random() genererar Java ett slumptal mellan 0,0 och 1,0 eller inom ett intervall som du själv anger.

public class Main {
public static void main(String args[]) {
double randomNumber;
System.out.println(Math.random());
}
}
java

Ett möjligt resultat skulle kunna vara:

0.7488711506123137
java

Du kan dock också begränsa de möjliga re­sul­ta­ten, till exempel genom att endast tillåta heltal mellan 0 och 100. För att göra detta använder du följande kod:

public class Main {
public static void main(String args[]) {
int randomNumber = (int) (Math.random() * 101);
System.out.println(randomNumber);
}
}
java

Detta ger dig ett slump­mäs­sigt resultat som detta:

27
java

Vilka är de vik­ti­gas­te metoderna?

Det finns många metoder som du kan använda med Java Math-klassen. Vi har listat de vik­ti­gas­te för dig här:

Metod Funktion
abs() Re­tur­ne­rar det absoluta värdet av ett argument
max() Re­tur­ne­rar det större av två värden
min() Re­tur­ne­rar det mindre av två värden.
pow() Re­tur­ne­rar po­tens­vär­det.
sqrt() Beräknar kvadra­tro­ten
random() Re­tur­ne­rar ett slump­mäs­sigt dub­bel­vär­de
cbrt() Beräknar ku­bikro­ten
log() Re­tur­ne­rar den naturliga lo­ga­rit­men av ett dub­bel­vär­de
sin() Beräknar sinus för ett dub­bel­vär­de
cos() Beräknar cosinus för ett dub­bel­vär­de.
tan() Beräknar tang­ens­vär­det för ett dub­bel­vär­de.
round() Avrundar ett dub­bel­vär­de uppåt eller nedåt till ett heltal.
negateExact() Visar det motsatta värdet av ett argument.
floor() Avrundar det största dub­bel­vär­det som är mindre än eller lika med det angivna ar­gu­men­tet nedåt.
Gå till huvudmeny