29.01.2014 Aufrufe

Script Java

Script Java

Script Java

MEHR ANZEIGEN
WENIGER ANZEIGEN

Erfolgreiche ePaper selbst erstellen

Machen Sie aus Ihren PDF Publikationen ein blätterbares Flipbook mit unserer einzigartigen Google optimierten e-Paper Software.

3.1 int, boolean und Programmstrukturen<br />

3.1.1.4 Arithmetische Operatoren und Zuweisung<br />

Dringen wir nun tiefer in die Klasse Number ein: In ihrem Konstruktor Number() wird<br />

eine Instanz der Klasse Random generiert.<br />

Die Methode<br />

public void nextValue() {<br />

value = Math.abs(rndm.nextInt())%99+1;<br />

}<br />

weist der Instanzvariablen value eine positive ganze Zahl zwischen 1 und 99 zu.<br />

Im Ausdruck<br />

Math.abs(rndm.nextInt())%99+1<br />

findet man einerseits einen Methodenaufruf (Math.abs(rnd.nextInt()) vor,<br />

welcher als Parameter erneut einen Methodenaufruf (rndm.nextInt()) beinhaltet, und<br />

andererseits die arithmetischen Operatoren % und +. Wie in der Mathematik, sind auch<br />

arithmetische Operatoren mit Prioritäten verknüpft, es ist geregelt, welche Operation vor<br />

einer anderen ausgeführt werden muss. So hat beispielsweise der sogenannte Modulo-<br />

Operator (%) eine höhere Priorität als die Addition (+). Wenn wir die Prioritäten durch<br />

Setzten von Klammern verdeutlichen, erhalten wir folgenden Ausdruck:<br />

((Math.abs(rndm.nextInt())%99)+1)<br />

Als erstes wird der Methodenaufruf Math.abs(rndm.nextInt()) ausgeführt. Da<br />

dieser als Parameter wiederum einen Methodenaufruf beinhaltet, wird schlussendlich der<br />

Methodenaufruf rndm.nextInt() als allererste Aktion gestartet. Dem Objekt rndm<br />

wird die Botschaft nextInt() gesendet, bei welcher es sich um eine in der Klasse<br />

Random deklarierte Methode handelt, welche zufällig eine ganze Zahl vom Typ int<br />

generiert. Diese int-Zahl wird nun als Parameter der Methode abs() übergeben. Die in<br />

der Klasse Math aufgeführte Methode, liefert den Absolutbetrag des ihr als Parameter<br />

übergebenen int-Wertes zurück. Die beiden Methodenaufrufe liefern also schlussendlich<br />

eine zufällig generierte, positive, ganze Zahl.<br />

Der Modulo-Operator liefert den Rest, der bei einer Division zweier ganzzahligen Zahlen<br />

anfällt.<br />

Math.abs(rndm.nextInt())%99<br />

Wenn wir also beispielsweise 103 % 99 rechnen, erhalten wir 4, da 103 geteilt durch 99<br />

eins Rest vier ergibt. Die Resultate von einer positiven, ganzen Zahl % 99 bewegen sich<br />

also in den Schranken von 0 bis 98.<br />

64

Hurra! Ihre Datei wurde hochgeladen und ist bereit für die Veröffentlichung.

Erfolgreich gespeichert!

Leider ist etwas schief gelaufen!