Processing Teil 4
Ziele
- Arrays
- Random-Funktion
- Wiederholung der letzten Konzepte
Was sind Arrays und wie setze ich sie ein?
Die Arrays sind Listen von Daten. Es ist möglich Listen von allen Datentypen (inkl. Klassen) zu erzeugen, sei es von int, float oder Handy. Bei Arrays fangen die Indizes bei 0 an und gehen bis zur max. Länge -1.Beispiel:
int[] numbers = new int[100]; // So wird ein Array initialisiert
Hier haben wir ein Array mit der Länge 100. Um auf die Objekte des Arrays zuzugreifen, müssen wir den Namen unserer Variable hinschreiben, gefolgt von eckigen Klammern.
Beispiel:
numbers[34] = 13; // Wir weisen dem Array an der Stelle 34 den Wert 13
Der erste Wert unseres Arrays ist die numbers[0] und die letzte die numbers[99]. Wie schon gesagt, können wir unser Array mit jedem Datentyp und Klassen initialisieren.
Handy[] mobilePhones = new Handy[5]; /* Array aus 5 Handys. Es muss eine Klasse Handy existieren*/
Man kann auch auf die Größe des Arrays zugreifen, in dem man den Namen des Arrays schreibt, gefolgt von „ .length “ schreibt.
Handy[] mobilePhones = new Handy[5];
println(mobilePhones.length); // Die Ausgabe ist 5
Random-Funktion
Um die Methode random() zu benutzen, stellt uns Processing zwei Möglichkeiten zur Verfügung. Die mit einem Parameter ist die Methode random(upper_limit) und die mit zwei Parametern ist die Methode random(lower_limit, upper_limit).
Die Beiden funktionieren ganz ähnlich. Nur erzeugt random(upper_limit) eine beliebige Zahl von 0 bis upper_limit und random(lower_limit, upper_limit) erzeugt eine beliebige Zahl von lower_limit bis upper_limit.
int[] numbers = new int[100];
for(i = 0; i<number.length; i++){
numbers[i] = random(100); // random(upper_limit);
}
Im obigen Programmcode wird ein Zahlen-Array von 100 Zahlen erzeugt und diese durch eine for-Schleife mit beliebigen Zahlen von 0 bis 99 ausgefüllt.
Genau das Gleiche können wir auch machen, indem wir random(100) durch random(0,99) ersetzen:
int[] numbers = new int[100];
for(i = 0; i<number.length; i++){
numbers[i] = random(0,99); // random(lower_limit, upper_limit);
}