Javakurs 11/1
Stundenprotokoll
von Jakob Cwierdzinski
09.09.2000
Array
Ein Array kann man sich wie eine Schubladenreihe vorstellen, in der für alle Elemente der gleiche Name gilt. Die unterschiedlichen Elemente werden nur mit unterschiedlichen Nummern gekennzeichnet. Hierbei beginnt die Nummerierung mit Null.
![]()
Deklarieren und initialisieren eines leeren Arrays:int [] x = new int [5]
Dies wird gemacht, damit der Rechner erkennt, daß es sich um eine Schubladenreihe handelt. Das Schlüsselwort "new" bedeutet, dass ein neues Objekt erzeugt wird. Man nennt ein Objekt auch Instanz einer Klasse. In einigen Fällen kann ein Objekt auch ohne die Verwendung des Schlüsselworts new erzeugt werden:
Deklarieren und initialisieren eines gefüllten Arrays:
int [] x = {100,20,80,40,55}
Array ist eine Klasse, aus der durch das Schlüsselwort "new" oder durch direkte Wertzuweisungen ein Objekt erzeugt wird.
Worterläuterungen:Eine Klasse ist ein Konstruktionsplan.
Ein Objekt ist ein realisierter Konstruktionsplan.
Schleifen:Eine Schleife wird dazu verwendet, um Teile eines Programms (Programmblöcke) kontrolliert zu wiederholen.
Syntax einer Java-Schleife:
for (int i = 0; i < 10; i++) {
x [i] = i = i;
}Erläuterung der einzelnen Elemente:
int i = 0 deklariert und initialisiert (gibt einen Anfangswert) den Schleifenzähler
i < 10 ist der Schleifenkontrollbefehl
i++ ist der Inkrementierungsbefehl. i++ bedeutet dasselbe wie i = i+1Beispiel-Applet
Im hier gezeigten Applet werden Schleifen und Arrays benutzt, um die einzelnen Bestandteile der Lokomotive (Rechtecke und Kreise) zu zeichnen. Die Lokomotive fährt, wenn sich der Mauszeiger im Appletfeld bewegt. Bei einem Maus-Klick ändert sie die Fahrtrichtung.
import
java.awt.*;
import java.applet.*;public
class p4a extends Applet{
int[] xk = {0,10,60,5,55};
int[] yk = {0,-30,-30,15,15};
int[] l = {90,10,30,30,30};
int[] b = {30,30,30,30,30};
int posx,posy,vor;public void init(){
setBackground(Color.yellow);
posx=this.getSize().width/2;
posy=this.getSize().height/2;
vor=2;
}public boolean mouseDown(Event e, int x, int y){
vor=-vor;
return true;
}public boolean mouseMove(Event e, int x, int y){
posx=posx+vor;
repaint();
return true;
}public void paint(Graphics g){
g.setColor(Color.black);
for(int i=0;i<5;i++){
if(i<3){
g.fillRect(xk[i]+posx,yk[i]+posy,l[i],b[i]);
}
else{
g.fillOval(xk[i]+posx,yk[i]+posy,l[i],b[i]);
g.setColor(Color.red);
g.drawOval(xk[i]+posx,yk[i]+posy,l[i],b[i]);
g.setColor(Color.black);
}
}
}
}