Java Math: So funktioniert die Klasse

Mit Java Math können Sie einfache Berechnungen durchführen. Die zahlreichen unterschiedlichen Methoden decken neben der Basis unter anderem auch Logarithmen und Trigonometrie ab. Die Syntax ist vergleichsweise einfach und daher leicht zu erlernen.

Was ist Java Math?

Wenn Sie Operationen mit einfachen numerischen Berechnungen durchführen möchten, kennt die Programmiersprache dafür den Standard Math. Die Java-Klasse muss nicht extra importiert werden und verfügt über zahlreiche Methoden, die wir Ihnen im Verlauf dieses Artikels noch auflisten und näher erläutern. Die Math-Klasse wird nicht instanziiert und all ihre Methoden lediglich statisch verwendet. Ebenfalls statisch sind die zwei Konstanten der Klasse: Die Eulersche Zahl (näherungsweise e = 2,7182818284590) als Basis für den natürlichen Logarithmus und die natürliche Exponentialfunktion sowie die Kreiszahl Pi (näherungsweise π = 3,1415926535). Die Math-Klasse ist im Paket java.lang enthalten. Der Ergebnistyp der Berechnungen ist meistens „double“.

Günstige Webhosting-Pakete von IONOS!

Vertrauen Sie auf flexibel skalierbares und zuverlässiges Webhosting inklusive persönlichem Berater mit IONOS!

Kostenlose Domain
SSL Zertifikat
DDoS-Schutz

Absolute Werte ermitteln

Die Funktionsweise und Syntax der Java-Class Math lässt sich am besten an Beispielen und in Zusammenhang mit den einzelnen Methoden veranschaulichen. Wenn Sie den absoluten Wert eines Parameters ermitteln möchten, können Sie abs() nutzen. Unter einem absoluten Wert versteht man den Abstand einer Zahl zu 0 oder eine Zahl ohne Vorzeichen. Das Ergebnis wird somit immer positiv sein. Die zulässigen Typen dieser Methode sind double, float, int und long. So funktioniert Math.abs mit einer positiven Zahl. Für die Ausgabe nutzen wir hier und in den folgenden Beispielen den Java-Befehl System.out.println.

public class Main {
public static void main(String args[]) {
int number = +7;
System.out.println ("Die ursprüngliche Zahl ist: " + number);
System.out.println ("Die absolute Zahl ist: " + "Math.abs (" + number + ") = " + Math.abs(number));
}
}
java

Die entsprechende Ausgabe sieht so aus:

Die ursprüngliche Zahl ist 7 Die absolute Zahl ist Math.abs ( 7 ) = 7
java

Sie können auch einen negativen Ausgangswert nutzen. Das Ergebnis wird trotzdem positiv bleiben. So funktioniert unser Beispiel von oben:

public class Main {
public static void main(String args[]) {
int number = -7;
System.out.println ("Die ursprüngliche Zahl ist: " + number);
System.out.println ("Die absolute Zahl ist: " + "Math.abs (" + number + ") = " + Math.abs(number));
}
}
java

Die Ausgabe entspricht im Großen und Ganzen dem vorherigen Beispiel:

Die ursprüngliche Zahl ist -7 Die absolute Zahl ist Math.abs( -7 ) = 7
java

Die Methode ignoriert also das Vorzeichen der negativen ganzen Zahl (-7) und gibt deshalb ebenfalls als Ergebnis „7“ aus.

Den größten Wert ausgeben

Mit der Methode max() ermitteln Sie den größeren Wert von zwei Eingaben. Das sieht beispielhaft so aus:

public class Main {
public static void main(String args[]) {
double zahl = Math.max(3, 9);
System.out.println ("Die größere Zahl ist: " + zahl);
}
}
java

Die entsprechende Ausgabe ist diese:

Die größere Zahl ist 9
java

Den kleinsten Wert ermitteln

Ganz ähnlich funktioniert die Math-Class in Java, wenn Sie den kleineren Wert ermitteln möchten. Die passende Methode ist min() und sieht so aus:

public class Main {
public static void main(String args[]) {
double zahl = Math.min(3, 9);
System.out.println ("Die kleinere Zahl ist: " + zahl);
}
}
java

Sie erhalten dann diese Ausgabe:

Die kleinere Zahl ist 3
java

Potenz berechnen

Während die bisherigen Beispiele noch recht einfach waren, gibt es auch anspruchsvollere Rechnungen, die die Java-Klasse Math für Sie übernehmen kann. Die Methode für Potenzrechnung heißt zum Beispiel pow(). Dafür legen wir zunächst eine Basis und einen Exponenten fest und lassen danach die Berechnung durchführen.

public class Main {
public static void main(String args[]) {
double basis = 4;
double exponent = 2;
double potenz = Math.pow(basis, exponent);
System.out.println ("Das Ergebnis lautet: " + potenz);
}
}
java

So sieht danach unsere Ausgabe aus:

Das Ergebnis lautet 16
java

Quadratwurzel ziehen

Auch für Wurzelrechnung kann die Klasse mit der Methode sqrt() verwendet werden. Im folgenden Beispiel errechnen wir die Quadratwurzel aus 64:

public class Main {
public static void main(String args[]) {
double zahl = 64;
double wurzel = Math.sqrt(zahl);
System.out.println ("Das Ergebnis lautet: " + wurzel);
}
}
java

Dadurch erhalten wir diese Ausgabe:

Das Ergebnis lautet 8.0
java

Zufallszahlen ermitteln

Mit der Methode random() erhalten Sie eine Zufallszahl, die entweder zwischen 0.0 und 1.0 liegt oder in einem Bereich, den Sie selbst festlegen. Wir zeigen Ihnen beide Möglichkeiten:

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

Eine mögliche Ausgabe wäre dann zum Beispiel diese:

0.7488711506123137
java

Sie können die möglichen Ergebnisse aber auch eingrenzen und nur ganzheitliche Zahlen zwischen 0 und 100 zulassen. Dafür nutzen Sie folgenden Code:

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

Dadurch erhalten Sie zufällige Ergebnisse wie dieses:

27
java

Auflistung der wichtigsten Methoden

Es gibt zahlreiche Methoden, die Sie mit der Java-Klasse Math verwenden können. Dies sind die wichtigsten:

Methode Funktion
abs() Liefert den absoluten Wert eines Arguments.
max() Gibt den größeren von zwei Werten aus.
min() Gibt den Kleineren von zwei Werten aus.
pow() Liefert den Potenzwert aus.
sqrt() Rechnet die Quadratwurzel aus.
random() Gibt einen zufälligen double-Wert zurück.
cbrt() Errechnet die Kubikwurzel.
log() Gibt den natürlichen Logarithmus eines double-Wertes aus.
sin() Errechnet den Sinus eines double-Wertes.
cos() Errechnet den Kosinus eines double-Wertes.
tan() Errechnet den Wert der Tangente eines double-Wertes.
round() Rundet einen double-Wert zu einer Ganzzahl auf oder ab.
negateExact() Zeigt den gegenteiligen Wert eines Arguments an.
floor() Rundet den größten double-Wert ab, der kleiner oder gleich des gegebenen Arguments ist.