PROGRAMMIERUNG IN JAVA
ZUWEISUNGEN (1) Deklaration nennt man die Ankündigung eines Platzhalters (Variablen) und Initialisierung die erste Wertvergabe bzw. die konkrete Erstellung des Platzhalters. In einem Fach mit dem Namen <name> liegt dann der Wert <value> vom Typ <type>. <type> <name> = <value>; oder <type> <name>; <name> = <value>; int test = 5; double mynumber = 89.2; String myname = Luke ; int myvar1, myvar2; String dogname; myvar1 = 2; myvar2 = 77; dogname = Kira ;
ZUWEISUNGEN (2) Werte die einer Variablen entsprechend müssen zwingend den Typ der Variablen annehmen können. Falls der Typ eines Objektes explizit in einen anderen Typ umgewandelt werden soll, nennt man diesen Vorgang Cast. <type> <name> = (<type>) <value>; oder int test = (int) 89.2; boolean mybool = (boolean) 1; int myvar1; short shortie; String dogname; myvar1 = (int) true; shortie = (short) 2901242; dogname = Kira ; <type> <name>; <name> = (<type>) <value>;
FUNKTIONEN (1) Funktionen kapseln und kombinieren verschiedene kleine Anweisungsblöcke zu einem logischen Ablauf und nehmen optional mehrere Variablen an und geben optional einen Wert zurück. Funktionen sind Teile von Klassen und werden über eine Instanz mit. aufgerufen! <returntype> <name>(<params>) <body> // Anweisungen class Calc int add(int one, int two) return one + two; // in main: Calc c = new Calc(); int erg = c.add(1, 2); // erg ist gleich 3
FUNKTIONEN (2) Statische Funktionen existieren in einer Klasse und können ohne eine Instanz der Klasse (new) aufgerufen werden. Statische Funktionen können nur statische Variablen der Klasse nutzen und haben keinen Zugriff auf nicht statische Variablen. class Calc static int add(int one, int two) return one + two; // in main: static <returntype> <name>(<params>) <body> // Anweisungen int erg = Calc.add(1, 2); // erg ist gleich 3
ABFRAGEN (1) Die IF-Abfrage wertet den Term innerhalb der runden Klammern aus. Sofern dieser Term true ergibt, werden die Anweisungen innerhalb der geschweiften Klammern ausgeführt. if ( <term> ) <body> else [if (<term>)] <body> if (mynumber == 5) // wenn 5 dann else if (mynumber == 6) // wenn 6 dann else // wenn nicht 5 oder 6 // (andernfalls)
ABFRAGEN (2) Die SWITCH-CASE-Abfrage wertet den Term innerhalb der runden Klammern aus und vergleicht diesen Wert mit unterschiedlichen Fällen (sog. Cases). switch ( <term> ) case <case1>: break; default: break; Scanner sc = new Scanner(System.in); int value = scanner.nextint(); String schokie = No schokie :( ; switch (value) case 1: // value == 1 schokie = Wilka Alpenmilch ; break; case 2: // value == 2 schokie = Wilka Nuss ; break; default: // falls keines der // obigen Fälle break;
SCHLEIFEN (1) Die Inhalte <body> einer WHILE-Schleife werden solange ausgeführt, wie der Term <term> innerhalb der runden Klammern true ergibt. List<int> mylist = new ArrayList<int>(); mylist.add(5); mylist.add(2); mylist.add(7); while ( <term> ) <body> Iterator<int> it = mylist.iterator(); while (it.hasnext()) int item = it.next(); System.out.println(item);
SCHLEIFEN (2) Die DO-WHILE-Schleife führt zuerst die Anweisungen innerhalb der geschweiften Klammern aus und prüft dann den Term in den runden Klammern. do <body> while ( <term> ); Scanner sc = new Scanner(System.in); int value1 = scanner.nextint(); int value2 = scanner.nextint(); do int erg = value1 + value2; System.out.println(erg); System.out.print( Again? (Y/n): ); while (scanner.next()!= n );
SCHLEIFEN (3) Die FOR-Schleife startet mit einem bestimmten Wert für Variablen und wird solange ausgeführt wie der Wert des Terms <term> true ergibt. Nach Abarbeitung eines Schleifendurchlaufes, werden die Anweisungen im Block <actions> ausgeführt. Diese Form der Schleife wird oft Zählschleife genannt. Dabei wird eine Variable herauf- oder heruntergezählt. for (<decl>; <term>; <actions>) <body> for (int i = 10; i > 0; i -= 1) // Zahlen von 10 bis 1 System.out.println(i);
SCHLEIFEN (4) Die FOR-EACH-Schleife iteriert über alle Objekte in einer Auflistung <collection>. Dabei wird eine lokale Variable mit dem Namen <name> erzeugt, deren Wert sich mit jedem Schleifendurchlauf, auf den Wert des Objektes an der nächsten Stelle in einer Auflistung, ändert. Im Beispiel werden nach und nach alle Werte, die in der Auflistung <collection>, hier werte, enthalten sind, ausgegeben. for (<type> <name> : <collection>) <body> int[] werte = 1, 2, 3, 4 ; for ( int value : werte) System.out.println(value);