Java Crashkurs Mentoring S Anja Wolffgramm, Sönke Schmidt, Toni Draßdo Freie Universität Berlin

Größe: px
Ab Seite anzeigen:

Download "Java Crashkurs Mentoring S Anja Wolffgramm, Sönke Schmidt, Toni Draßdo Freie Universität Berlin"

Transkript

1 Java Crashkurs Mentoring S 2016 Anja Wolffgramm, Sönke Schmidt, Toni Draßdo Freie Universität Berlin 13/05/2016

2 Outline Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 2

3 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 3

4 Java - kann man das essen? Was ist Java? Objektorientierte Programmiersprache Quellcode + Compiler -> Bytecode (maschinenverständlich) Bytecode von der Java virtual Maschine (JVM) interpretiert Java-Entwicklungswerkzeug (JDK) zum Erstellen Java-Laufzeitumgebung (JRE) zur Ausführung JVM und Bibliotheken Plattformunabhängig durch Virtualisierung (siehe JVM) Just-in-time (JIT) Kompilierung Es ist kein Javascript und sollte damit nicht verwechselt werden. Freie Universität Berlin, Java Crashkurs 4

5 Virtual Machine Freie Universität Berlin, Java Crashkurs 5

6 Warum Java? Warum Java? Plattformunabhängig Bsp.: Code des Studenten (Win) ist ausführbar beim Tutor (Linux) und beim Prof. (Mac) Viel einfacher als andere Programmiersprachen Höhere Abstraktion Viele Bibliotheken verfügbar (bsp. für Protokolle wie HTTP) Nicht direkt auf Hardware ausgeführt - Sandbox Keine Pointer! (Garbage Colection) Einfaches und schönes Error Handling Ähnlich zu C/C++ aber NICHT identisch! Ähnliche Syntax und ähnliche primitive Datentypen (bool ist hier kein int) Freie Universität Berlin, Java Crashkurs 6

7 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 7

8 Hello world Ein einfaches Programm, das einen Text ausgibt... 1 public class Hallo { 3 public static void main (String[] args) { 5 System.out.println("Hello World"); 7 } 9 } Freie Universität Berlin, Java Crashkurs 8

9 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 9

10 Kompilieren & Ausführen Quellcode speichern in Hallo.java javac Hallo.java Es wird nun kompiliert... es entsteht Hallo.class *.class ist der Bytecode Ausführen mit: java Hallo Freie Universität Berlin, Java Crashkurs 10

11 Kommandozeileneingabe Mit der Kommandozeileneingabe per Hand kompilieren... Freie Universität Berlin, Java Crashkurs 11

12 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 12

13 Python vs. Java Ein kleines Beispiel... Freie Universität Berlin, Java Crashkurs 13

14 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 14

15 Was ist wichtig? Was ist wichtig? alles muss in einer Klasse sein wir brauchen eine main() zum Starten ein Ausdruck endet mit einem Semikolon ( ; ) Variablen müssen (mit Datentyp) deklariert werden (vor dem Benutzen!) Format: <Typ> <Variablenname> Bsp.: float quotient; int taschengeld Kommentare mit // oder im Block von /* über Zeilen bis zum Ende */ Blockstruktur anders Anweisungsblöcke sind durch geschweifte Klammern { } gekennzeichnet Name Conventions ; Namens Zusammenhänge mit Großbuchstaben verknüpft oder Unterstrich Variablen beginnen klein ; Bsp.: maxspeed, zeitderdauervonx Klassen beginnen groß; Bsp.: MyClass, MeinErstesProgramm, Hallo Freie Universität Berlin, Java Crashkurs 15

16 Alles Wichtige nochmal in einem Beispiel... 1 public class Hallo { 3 public static void main (String[] args) { 5 System.out.println("Hello World"); 7 } 9 } Freie Universität Berlin, Java Crashkurs 16

17 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 17

18 Primitive Datentypen Freie Universität Berlin, Java Crashkurs 18

19 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 19

20 Operatoren Operatoren... Zuweisungs-Operatoren: =, +=, -=, =, /=, %= Bsp.: meingeldaufmbankkonto += 10; entspricht: meingeldaufmbankkonto = meingeldaufmbankkonte+10; Numerische Operatoren: +, -, *, /, %, ++, - - Relationale Operatoren: ==,!=, <, >, <=, >= Bsp.: if (meingeldaufmbankkonto <= 0 ) { System.out.print("PLEITE"); } Boolische Operatoren: &&,,! Bsp.: if ( (meingeldaufmbankkonto <= 0 ) && (geld_im_portmonai <= 0) ) { System.out.print("PLEITE"); } Bitweise Operatoren: &,, ˆ,, «,» Freie Universität Berlin, Java Crashkurs 20

21 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 21

22 schnelle Übung Wie sind die Abhängigkeiten? Kurze Übung zur Auswertung von Ausdrücken Gegeben sind Integer Variablen a, b, c, d und e, mit den Werten a=1, b=2, c=3, d=4 Wertet nun die folgenden Ausdrücke aus: 1. a + b - c + d 2. a * b / c a * b % c a * b % c 5. a + d % b - c 6. e = b = d + c / b - a Freie Universität Berlin, Java Crashkurs 22

23 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 23

24 Entscheidungen: if, if-else, switch Schleifen: for, while, do-while Kontrollstrukturen werten Boolesche Ausdrücke aus Bsp.: if (x == 0) Freie Universität Berlin, Java Crashkurs 24

25 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 25

26 Kontrollstrukturen - if-else If - else 1 if (Bedingung) { //...die geschweifte Klammer symbolisiert das THEN 2 Anweisung 1 3 } 4 else /* (sonst) */ { 5 Anweisung 2 6 } Umgangssprachlich: Ïf Bedingung then do Anweisung 1 else do Anweisung 2. Also Auf deutsch in etwa: Falls die Bedingung erfüllt ist, führe Anweisung 1 aus, ansonsten führe Anweisung 2 aus." Freie Universität Berlin, Java Crashkurs 26

27 Kontrollstrukturen -if-else kombinieren if-else mehrmals kombinierbar... 1 if (Bedingung 1 gilt) { 2 Anweisung 1 3 } 4 else //Bedingung 1 also nicht erfüllt 5 if (Bedingung 2) { 6 Anweisung 2 7 } 8 else { // Bedingung 2 wurde nun auch nicht erfüllt 9 Anweisung 3 10 } Umgangssprachlich: "Falls die Bedingung 1 erfüllt ist, führe Anweisung 1 aus, falls nicht, überprüfe, ob die Bedingung 2 erfüllt ist. Wenn ja, dann führe Anweisung 2 aus, ansonsten führe Anweisung 3 aus." Freie Universität Berlin, Java Crashkurs 27

28 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 28

29 Kontrollstrukturen - while Die while-schleife... 1 while (Bedingung) // also solange die Bedingung gilt, führe die Anweisung aus 2 { 3 Anweisung 4 } Beispiel: 1 while ( geld > 0 ) { 2 SpendeGeld(10); 3 geld = geld 10; 4 } Geld muss vor der Schleife initialisiert orden sein (und optimal auch einen Wert haben ;o) SpendeGeld ist eine Funktion, die 10 Euro spendet. Kann Geld unter 0 Euro fallen? Freie Universität Berlin, Java Crashkurs 29

30 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 30

31 Kontrollstrukturen - do-while Die do-while-schleife... 1 do { 2 Anweisung 3 } while (Bedingung) Der Körper der do-while Schleife wird immer zum Schluss ausgeführt. Bedeutet, dass alles was hinter dem do kommt, mindestens einmal ausgeführt wird, erst danach wird die Bedingung überprüft und ggf. erneut ausgeführt. Freie Universität Berlin, Java Crashkurs 31

32 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 32

33 Kontrollstrukturen - for-schleife Die for-schleife... 1 for (Initialisierung; Boolescher Test bzw. Bedingung; Modifikation) { 2 Anweisung 3 } Beispiel: 1 for (int i = 1; i < 11; i++) { 2 System.out.println("Nr. " + i); 3 } Freie Universität Berlin, Java Crashkurs 33

34 for-schleife-rückwärts Ein Beispiel zum Üben... Was gibt folgender Code aus? 1 for ( int i = 10; i > 0; i = 2) { // i -= 2 entspricht i = i System.out.println( i ); 3 } Freie Universität Berlin, Java Crashkurs 34

35 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 35

36 break & continue Die break und continue Anweisungen... break und continue können in while, do-while und for Schleifen verwendet werden, um den Rest des Durchlaufs zu überspringen break: bricht die Schleife ab continue: führt den nächsten Schleifendurchlauf aus Freie Universität Berlin, Java Crashkurs 36

37 break Beispiel Freie Universität Berlin, Java Crashkurs 37

38 continue Beispiel Freie Universität Berlin, Java Crashkurs 38

39 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 39

40 switch case Die switch case-anweisung... 1 switch (Ausdruck) { // meistens Integer Ausdruck 3 case Konstante1 : Anweisung(en); 4 break; 6 case Konstante2: Anweisung(en); 7 break; case KonstanteX: Anweisung(en); 12 break; 14 default: Anweisung(en); // default kommt zum Schluss 15 break; 17 } Freie Universität Berlin, Java Crashkurs 40

41 Beispiel: switch case 1 [...] 3 int day = 3; 5 [...] 7 switch (day) { 9 case 1: System.out.println("Montag"); 10 break; 12 case 2: System.out.println("Dienstag"); 13 break; 15 [...] 17 case 6: System.out.println("Samstag"); 18 break; 20 case 0: //Wer weiß, wieso hier nichts steht? 21 case 7: System.out.println("Sonntag"); 22 break; 24 default: System.out.println("Error, kein gültiger Tag"); 25 break; 26 } Freie Universität Berlin, Java Crashkurs 41

42 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 42

43 Strings Strings... Initialisierung mit: String name = "Peter"; String satz = "Es war einmal vor einer langen Zeit..."; String-Konkatenation (zusammenfügen) mit + Bsp.: satz + name; // wird zu: Es war einmal vor einer langen Zeit...Peter Oder: name + "hoer zu. "+ satz; // wird zu: Peter hoerzu. Es war einmal vor einer langen Zeit... Freie Universität Berlin, Java Crashkurs 43

44 String Methoden Stringlänge überprüfen mit.length() Bsp.: String name = "Peter"; int zaehler = name.length(); // zaehler == 5 Strings miteinander vergleichen NICHT mit == Benötigt wird für Strings:.equals Bsp.: String name = "Peter"; String name2 = "Pe"; name2 = name2 + "ter"; if ( name.equals(name2) ) {System.out.println("Beide Namen identisch");} Alle Zeichen im String zu klein Buchstaben machen, mit.tolowercase() Bsp.: String text = "Dies ist ein Test!"; Nach text.tolowercase(); wird daraus: dies ist ein test! Freie Universität Berlin, Java Crashkurs 44

45 String Methoden Äquivalent, um alles zu Großbuchstaben umzuwandeln:.touppercase Bsp.: String text= "Dies ist ein Test!"; mit text.touppercase(); wird daraus: DIES IST EIN TEST Trim Entfernt die Leertasten sowie Tabulatoren und Zeilenumbrüche, die am Anfang und Ende von einem String stehen Bsp.: String test = " Platz vorne und hinten "; test.trim(); // Daraus wird nun Platz vorne und hinten // Alle whitespaces wurden entfernt Freie Universität Berlin, Java Crashkurs 45

46 String Methoden Zeichen aus String holen mit.charat(position) Bsp.: String test= "Hallo"; char neu; neu = test.charat(0); // Variable neu hat nun das H Teilstringe nehmen mit substring(beginindex, endindex) Bsp.: String satz = Es war einmal vor einer langen Zeit..."; System.out.println("Teilstring: "+ satz.substring (7,13)); // Ausgabe: Teilstring: einmal Freie Universität Berlin, Java Crashkurs 46

47 Strings escapen Um in einer Zeichenkette / String / Ausgabe spezielle Zeichen benutzen zu können, muss man sie vorher escapen \" Doppel Anführungsstriche \ Einfache Anführungsstrich \\ Backslash \n New line (Geh zum Beginn der nächsten Linie) \r Carriage return (Geh zum Beginn der aktuellen Linie) \t Tabulator (macht whitespaces bis zum nächsten Tab stop) Freie Universität Berlin, Java Crashkurs 47

48 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 48

49 array Index startet mit 0 und ist fix (Größe nicht änderbar!) Deklarieren: double[] score = new double[5]; Oder in zwei Ausdrücken: double[] score; score = new double[5]; Arrays mit Initialisierung erzeugen: Bsp.: int[] messungen = {132, 22, 73, 98} Länge des Arrays: int zahl = score.length; //zahl == 5 Freie Universität Berlin, Java Crashkurs 49

50 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 50

51 Wörterbuch - Beispiel mit HashMap HashMap Objekt anlegen: 1 HashMap<Integer, String> map = new HashMap<Integer, String>(); Ein Element hinzufügen nennt man "put" Operation und benötigt einen "key" sowie ein "value" Objekt. Beispiele: 1 map.put(1, "One"); 2 map.put(2, "Two"); 3 //Folgendes gibt einen Compiler Fehler, da 3.0 kein Integer ist: 4 map.put(3.0, "Twenty One"); Um ein "value" zurück zu bekommen, müssen wir das "key Objekt kennen. Mit der get(key) Methode bekommen wir den "value zurück. Hier ein Beispiel Aufruf mit den Werten von oben: 1 Integer key = 2; 2 String value = map.get(key); 3 System.out.println("Key: " + key +" value: "+ value); 4 //Output: Key: 2 value: Two Freie Universität Berlin, Java Crashkurs 51

52 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 52

53 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 53

54 try catch 1 try { 2 // Code der eine Exception werfen könnte 3 } catch (ExceptionType e) { 4 // Code um mit der Exception umzugehen 5 } // Mehrere catches mit unterschiedlichen ExceptionTypes möglich Freie Universität Berlin, Java Crashkurs 54

55 Bsp.: Exception Bsp.: String zum Integer umwandeln. Problem: String könnte gar keine natürliche Zahl sein! Abfangen im Notfall: 1 String zahlstring = "42"; 2 // zum Testen der Exception den String ändern (Bsp. ändern zu "42asd";) 4 int zahl = 0; 5 try{ 6 zahl = Integer.parseInt(zahlString); 7 System.out.println("Casten vom String " + zahlstring + ", der zum 8 integer wird: " + zahl); 9 } catch(exception e) { 10 //... falls zahlstring keine Zahl ist, also die Umwandlung nicht funktioniert 11 System.out.println("Es ist ein Problem aufgetreten! " + 12 "Der String scheint keine natürliche Zahl zu sein und "+ 13 "konnte nicht umgewandelt werden! \n" + 14 "Die Fehlermeldung lautet: " + e); // } Freie Universität Berlin, Java Crashkurs 55

56 Einfach mal ne Pause... Freie Universität Berlin, Java Crashkurs 56

57 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 57

58 Java installieren Windows downloads html Linux (Ubuntu) sudo apt-get install openjdk-9-jre Freie Universität Berlin, Java Crashkurs 58

59 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 59

60 IntelliJ installieren IntelliJ - (Entwicklungsumgebung) Download: Windows: ideaic exe ausführen Linux: tar xfz ideaic tar Freie Universität Berlin, Java Crashkurs 60

61 Einfach mal ne Pause... Freie Universität Berlin, Java Crashkurs 61

62 Klassen & Objekte Klassen sind der Bauplan für Objekte haben Felder, Konstruktoren, Methoden Objekte Aus einer Klasse können beliebig viele Objekte erzeugt werden. Bsp.: 10 Häuser aus einem Bauplan Methoden können auf einem Objekt aufgerufen werden. Bsp.: haus.istleer(heute) Freie Universität Berlin, Java Crashkurs 62

63 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 63

64 Flugzeug Klassen, Objekte... und jetzt Flugzeuge??? Ihr bekommt jetzt ein Handout zum Durchgehen und Üben des soeben erlernten! Sprecht uns an, sobald ihr Fragen habt! Freie Universität Berlin, Java Crashkurs 64

65 Inhalt Inhalt Was ist Java? Hello World Kompilieren & Ausführen Python vs. Java Was ist wichtig? Primitive Datentypen Operatoren if-else while do-while for-schleife break & continue switch case Strings Arrays Wörterbuch Exceptions try catch Entwicklungsumgebung Java installieren IntelliJ installieren Klassen & Objekte Übungen Flugzeug Ziegenproblem Quellen Freie Universität Berlin, Java Crashkurs 65

66 Ziegenproblem Nehmen Sie an, Sie wären in einer Spielshow und hätten die Wahl zwischen drei Toren. Hinter einem der Tore ist ein Auto, hinter den anderen sind Ziegen. Sie wählen ein Tor, sagen wir, Tor Nummer 1, und der Showmaster, der weiß, was hinter den Toren ist, öffnet ein anderes Tor, sagen wir, Nummer 3, hinter dem eine Ziege steht. Er fragt Sie nun: Möchten Sie das Tor Nummer 2? Ist es von Vorteil, die Wahl des Tores zu ändern? (siehe: Freie Universität Berlin, Java Crashkurs 66

67 Was muss man noch wissen sollte... Zufallszahlen Zufallszahlen können mit der Klasse Math erzeugt werden und liefern eine Zufallszahl größer gleich 0.0 und kleiner als 1.0 zurück. 1 double zufallszahl; 2 zufallszahl = Math.random(); Ganzzahlige Zufallszahlen im Bereich zwischen 0 und 9 erstellen: 1 int zufallszahl; 2 zufallszahl = (int)(math.random() 10); 3 System.out.println(zufallszahl); Was muss man ändern, damit ganzzahlige Zufallszahlen im Bereich zwischen 1 und 10 entstehen? 1 zufallszahl = (int)(math.random() 10) + 1; Freie Universität Berlin, Java Crashkurs 67

68 Ziegenproblem - Zufallszahlen Für Zufallszahlen zwischen 13 und 29 sieht es dann z.b. so aus: 1 //Liefert eine von 17 Zufallszahlen (im Bereich von 13 bis 29) 2 zufallszahl = (int)(math.random() 17) + 13; Zufallszahlen können auch mit einem Random Objekt erzeugt werden. 1 Random rnd = new Random(); 2 random = rnd.next(10); // erzeugt eine Zufallszahl von 0 bis 9 Für Zufallszahlen zwischen 13 und 29 sieht es dann z.b. so aus: 1 Random rnd = new Random(); 2 random = rnd.next(17)+13; // erzeugt eine Zufallszahl von 13 bis 29 Freie Universität Berlin, Java Crashkurs 68

69 Quellen (alle Links zuletzt am um 0:00 Uhr abgerufen) Referenzen Grafiken Button-Key.jpg Freie Universität Berlin, Java Crashkurs 69

Grundlagen der Programmierung

Grundlagen der Programmierung Java Crash Course Grundlagen der Programmierung Sönke Schmidt ( Soenke.Schmidt@fu-berlin.de) Meine Webseite: http://www.soenke-berlin.de/ Mentoring Webseite: http://www.mi.fu-berlin.de/stud/mentoring/main_mentoring_veranstaltungen/erstsemester/informatik/index.html

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

Mehr

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015

Einführung Datentypen Verzweigung Schleifen. Java Crashkurs. Kim-Manuel Klein May 4, 2015 Java Crashkurs Kim-Manuel Klein (kmk@informatik.uni-kiel.de) May 4, 2015 Quellen und Editoren Internet Tutorial: z.b. http://www.java-tutorial.org Editoren Normaler Texteditor (Gedit, Scite oder ähnliche)

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration

Mehr

Vorkurs Informatik WiSe 16/17

Vorkurs Informatik WiSe 16/17 Java Einführung Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 04.10.2016 Technische Universität Braunschweig, IPS Überblick Organisatorisches Hello! 04.10.2016 Dr. Werner Struckmann / Stephan Mielke,

Mehr

Informatik I - Einstiegskurs

Informatik I - Einstiegskurs Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13

Mehr

System.out.println("TEXT");

System.out.println(TEXT); Inhaltsübersicht - Erstes Beispiel - Datentypen - Ausdrücke und Operatoren - Schleifen / Bedinungen - Struktogramme - Grundgerüst eines Programms in JAVA - Einlesen von Daten Erstes Beispiel public class

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

RO-Tutorien 3 / 6 / 12

RO-Tutorien 3 / 6 / 12 RO-Tutorien 3 / 6 / 12 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery WOCHE 2 AM 06./07.05.2013 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der Helmholtz-Gemeinschaft

Mehr

Institut für Programmierung und Reaktive Systeme. Java 1. Markus Reschke

Institut für Programmierung und Reaktive Systeme. Java 1. Markus Reschke Java 1 Markus Reschke 06.10.2014 Überblick Einführung in die Programmierung zur Vereinfachung des Einstiegs ins Studium Erstellung von ausführbaren Programmen für den Computer Denk- und Vorgehensweisen

Mehr

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen

Javakurs FSS Lehrstuhl Stuckenschmidt. Tag 1 - Variablen und Kontrollstrukturen Javakurs FSS 2012 Lehrstuhl Stuckenschmidt Tag 1 - Variablen und Kontrollstrukturen main Methode Startpunkt jeder Java Anwendung String[] args ist ein Array aus Parametern, die beim Aufruf über die Kommandozeile

Mehr

Vorkurs Informatik WiSe 17/18

Vorkurs Informatik WiSe 17/18 Java Einführung Dr. Werner Struckmann / Stephan Mielke, Nicole Naczk, 04.10.2017 Technische Universität Braunschweig, IPS Überblick Organisatorisches Arbeitsablauf Hello World 04.10.2017 Dr. Werner Struckmann

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Wiederholung Anweisungen durch Methodenaufrufe Ausgabe

Mehr

RO-Tutorien 17 und 18

RO-Tutorien 17 und 18 RO-Tutorien 17 und 18 Tutorien zur Vorlesung Rechnerorganisation Christian A. Mandery TUTORIENWOCHE 2 AM 10.05.2012 KIT Universität des Landes Baden-Württemberg und nationales Forschungszentrum in der

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

Java Spickzettel von Panjutorials.de

Java Spickzettel von Panjutorials.de Java Spickzettel von Panjutorials.de Hallo Welt public class HalloWelt public static void main(string[] args) // Gibt "Hallo Welt" auf die Konsole aus System.out.print("Hallo Welt"); Eine eigenständige

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 22 Einstieg in die Informatik mit Java Grundlagen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 22 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White

Mehr

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht:

Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: Aufgabe 1.90: Ein Geschäft gibt ihren Kunden unterschiedliche Rabatte. Schreiben ein Programm, das folgende Rabattklassen vorsieht: o Klasse 0: kein Rabatt o Klasse 1: 4,5 % Rabatt o Klasse 2: 8,75% Rabatt

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? weit verbreitet einfach und (relativ) sicher keine Pointer (?) keine gotos kein Präprozessor keine globalen Variablen garbage collection objekt-orientiert

Mehr

Kapitel 2: Grundelemente der Programmierung

Kapitel 2: Grundelemente der Programmierung Kapitel 2: Grundelemente der Programmierung Variablen Variablen sind Speicherbereiche im Arbeitsspeicher Anhand eines Namens kann man Werte hineinschreiben und auch wieder auslesen Variablen besitzen ein

Mehr

Erste Java-Programme (Scopes und Rekursion)

Erste Java-Programme (Scopes und Rekursion) Lehrstuhl Bioinformatik Konstantin Pelz Erste Java-Programme (Scopes und Rekursion) Tutorium Bioinformatik (WS 18/19) Konstantin: Konstantin.pelz@campus.lmu.de Homepage: https://bioinformatik-muenchen.com/studium/propaedeutikumprogrammierung-in-der-bioinformatik/

Mehr

Einführung in die Programmierung 1

Einführung in die Programmierung 1 Einführung in die Programmierung 1 Einführung (S.2) Einrichten von Eclipse (S.4) Mein Erstes Programm (S.5) Hallo Welt!? Programm Der Mensch (S.11) Klassen (S.12) Einführung Wie Funktioniert Code? Geschriebener

Mehr

Programmiervorkurs Einführung in Java Tag 1

Programmiervorkurs Einführung in Java Tag 1 Programmiervorkurs Einführung in Java Tag 1 Sebastian Glutsch SS 2018 namen Inhaltsübersicht Vorkurs Tag 1:,, en,, Einführung Tag 2: Boolesche Ausdrücke,, If-Abfragen, Switch-Case Tag 3: Arrays, (Do-)While-Schleife,

Mehr

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch)

JAVA BASICS. 2. Primitive Datentypen. 1. Warum Java? a) Boolean (logische Werte wahr & falsch) JAVA BASICS 2. Primitive Datentypen 1. Warum Java? zunehmend weit verbreitet einfach und (relativ) sicher keine Adressrechnung, aber Pointer keine gotos kein Präprozessor keine globalen Variablen garbage

Mehr

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich

Einführung in die Programmierung I. 2.0 Einfache Java Programme. Thomas R. Gross. Department Informatik ETH Zürich 252-0027 Einführung in die Programmierung I 2.0 Einfache Java Programme Thomas R. Gross Department Informatik ETH Zürich Uebersicht 2.0 Einfache Java Programme Struktur Namen Output 2 Graphische Darstellung

Mehr

AuD-Tafelübung T-B5b

AuD-Tafelübung T-B5b 6. Übung Sichtbarkeiten, Rekursion, Javadoc Di, 29.11.2011 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit 3 Stack und Heap Stack Heap 4 Blatt 6 1 Blatt 5 2 OOP Klassen Static vs. Instanzen Sichtbarkeit

Mehr

3. Anweisungen und Kontrollstrukturen

3. Anweisungen und Kontrollstrukturen 3. Kontrollstrukturen Anweisungen und Blöcke 3. Anweisungen und Kontrollstrukturen Mit Kontrollstrukturen können wir den Ablauf eines Programmes beeinflussen, z.b. ob oder in welcher Reihenfolge Anweisungen

Mehr

Java: Eine kurze Einführung an Beispielen

Java: Eine kurze Einführung an Beispielen Java: Eine kurze Einführung an Beispielen Quellcode, javac und die JVM Der Quellcode eines einfachen Java-Programms besteht aus einer Datei mit dem Suffix.java. In einer solchen Datei wird eine Klasse

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 18.4.07, Grundlagen Übersicht 1 Kommentare 2 Bezeichner für Klassen, Methoden, Variablen 3 White Space Zeichen 4 Wortsymbole 5 Interpunktionszeichen 6 Operatoren 7 import Anweisungen 8 Form

Mehr

2 Programmieren in Java I noch ohne Nachbearbeitung

2 Programmieren in Java I noch ohne Nachbearbeitung 1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe

Mehr

Organisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50

Organisatorisches. drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Organisatorisches Vorlesung Donnerstag 8:35 bis 10:05 Übung drei Gruppen Gruppe 1: 10:10-11:40, Gruppe 2: 11:45-13:15 Gruppe 3: 13:20-14:50 Tutorium (Mehr oder weniger) abwechselnd Mo und Mi 10-11:30 Termine

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Organisatorisches. Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, , 14 Uhr bis Do, , 8Uhr

Organisatorisches. Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, , 14 Uhr bis Do, , 8Uhr Organisatorisches Neue Übungsblätter: Nur mehr elektronisch? Abgabe Di, 14.10., 14 Uhr bis Do, 23.10., 8Uhr. 14.10.2014 IT I - VO 1 1 IT I: Heute Wiederholung CuP ctd: this Arrays, ArrayLists Schleifen:

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy PROCESSING EINE ZUSAMMENFASSUNG Created by Michael Kirsch & Beat Rossmy INHALT 1. Typen und Operatoren 1. Datentypen 3. Klassen und Objekte 1. Klassen und Objekte 2. Operatoren 2. Konstruktor 3. Typkonversion

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollstrukturen - 1 - Anweisung Anweisung Zuweisung Methodenaufruf

Mehr

Organisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online

Organisatorisches. Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Organisatorisches Folien (u.a.) auf der Lva-Homepage Skriptum über MU Online Nächste Woche VO und UE am Dienstag, den 30.10.! UE im CR IL/IT Wissensüberprüfung am Zettel 25.10.2018 IT I - VO 3 1 Organisatorisches

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG GRUNDLAGEN Tobias Witt!! 24.03.2014 ORGANISATORISCHES 09:00-10:30! Täglich Übungen zur Vertiefung! Laptop hier nicht erforderlich! Linux, OS X! Freitag: http://hhu-fscs.de/linux-install-party/

Mehr

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen

2 Eine einfache Programmiersprache. Variablen. Operationen Zuweisung. Variablen Variablen Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Variablen dienen zur Speicherung von Daten. Um Variablen

Mehr

EINFÜHRUNG IN DIE PROGRAMMIERUNG

EINFÜHRUNG IN DIE PROGRAMMIERUNG EINFÜHRUNG IN DIE PROGRAMMIERUNG GRUNDLAGEN Tobias Witt 24.03.2014 ORGANISATORISCHES tobias.witt@hhu.de 10:30-12:00 Täglich Übungen zur Vertiefung Laptop hier nicht erforderlich Aber später in den Übungen!

Mehr

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download

Organisatorisches. Folien (u.a.) gibt's auf der Lva-Homepage zum Download Organisatorisches Folien (u.a.) gibt's auf der Lva-Homepage zum Download Diesen Mi erstes Tutorium (15-17) Ab nächster Woche montags 10-12 (jeweils im Computerraum) 17.10.2017 IT I - VO 3 1 Organisatorisches

Mehr

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010

Grundlagen der Programmierung Teil1 Einheit III Okt. 2010 Grundlagen der Programmierung Teil1 Einheit III - 22. Okt. 2010 GDP DDr. Karl D. Fritscher basierend auf der Vorlesung Grundlagen der Programmierung von DI Dr. Bernhard Pfeifer Einschub Bevor wir mit den

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  CPP-Uebungen-08/ Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen

Mehr

Java-Schulung Grundlagen

Java-Schulung Grundlagen Java-Schulung Grundlagen Java 2 Standard Edition JDK 5 / 6 31.05.2008 Marcel Wieczorek 1 Themenübersicht Basiswissen Objektorientierung Datentypen Fehlerbehandlung Sonstiges Einführung Klassen, Strings

Mehr

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java

Ursprünge. Die Syntax von Java. Das Wichtigste in Kürze. Konsequenzen. Weiteres Vorgehen. Rund um Java Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Inhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1

Inhaltsverzeichnis. Grundlagen und Einführung (1. Band) 1 Inhaltsverzeichnis Grundlagen und Einführung (1. Band) 1 1 Einleitung und Vorwort 1 1.1 Vorwort zur 13. Auflage....................... 1 1.2 Vorwort zur 10. Auflage....................... 1 1.3 Voraussetzungen...........................

Mehr

Grundlagen der Modellierung und Programmierung, Übung

Grundlagen der Modellierung und Programmierung, Übung Grundlagen der Modellierung und Programmierung Übung Prof. Wolfram Amme LS Softwaretechnik Prof. Klaus Küspert LS Datenbanksysteme Prof. Birgitta König-Ries LS Verteilte Systeme Prof. Dr. Wilhelm Rossak

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Welche Arten von Anweisungen gibt es? Anweisungen

Mehr

Objektorientierte Programmierung und Modellierung

Objektorientierte Programmierung und Modellierung Objektorientierte Programmierung und Modellierung Einführung, Teil 2 24.10.17 - WS17/18 Hakan Aksu 1 Raumänderung beachten Dienstag 14:15-15:45 Uhr in M001 (anstatt K101) 2 Ausfalltermine 31.10 Vorlesung

Mehr

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp

Die Syntax von Java. Ursprünge. Konsequenzen. Das Wichtigste in Kürze. Weiteres Vorgehen. Rund um Java. Sun Microsystems. Borland Software Corp Ursprünge Die Syntax von Java Borland Software Corp 1995 Syntax: Pascal Objektorientierte Prorammierung optional Plattformen: Windows (Linux, Mac OS X) Sun Microsystems 1995 Syntax: C/C++ Objektorientiert

Mehr

Java Anweisungen und Ablaufsteuerung

Java Anweisungen und Ablaufsteuerung Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht

Mehr

Objektorientierung. Marc Satkowski 20. November C# Kurs

Objektorientierung. Marc Satkowski 20. November C# Kurs Objektorientierung Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Weiterführende Verzweigungen Tertiäre-Verzweigung switch case 2. Schleifen Zählschleife (for) break & continue 3. Objektorientierung

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - 1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.

Mehr

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens

Einleitung Entwicklung in C Hello-World! Konstrukte in C Zusammenfassung Literatur. Grundlagen von C. Jonas Gresens Grundlagen von C Jonas Gresens Proseminar C Grundlagen und Konzepte Arbeitsbereich Wissenschaftliches Rechnen Fachbereich Informatik Fakultät für Mathematik, Informatik und Naturwissenschaften Universität

Mehr

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen.

1 Bedingte Anweisungen. 2 Vergleiche und logische Operatoren. 3 Fallunterscheidungen. 4 Zeichen und Zeichenketten. 5 Schleifen. Themen der Übung Kontrollstrukturen, Pseudocode und Modulo-Rechnung CoMa-Übung III TU Berlin 9.10.01 1 Bedingte Anweisungen Vergleiche und logische Operatoren 3 Fallunterscheidungen 4 Zeichen und Zeichenketten

Mehr

Einführung in den Einsatz von Objekt-Orientierung mit C++ I

Einführung in den Einsatz von Objekt-Orientierung mit C++ I Einführung in den Einsatz von Objekt-Orientierung mit C++ I ADV-Seminar Leiter: Mag. Michael Hahsler Syntax von C++ Grundlagen Übersetzung Formale Syntaxüberprüfung Ausgabe/Eingabe Funktion main() Variablen

Mehr

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken

Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Vorsichtige Programmierer verwenden Inkrement- Operatoren nicht in komplizierteren Ausdrücken Aufgabe 1.60 a) Welchen Wert erhält die boolesche Variable z in folgendem Beispiel? int i = 2, j = 5; boolean

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Programmierkurs Java

Programmierkurs Java Programmierkurs Java Kontrollstrukturen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Kontrollstrukturen Wichtig: bedingte Ausführung

Mehr

Einführung in C. EDV1-04C-Einführung 1

Einführung in C. EDV1-04C-Einführung 1 Einführung in C 1 Helmut Erlenkötter C Programmieren von Anfang an Rowohlt Taschenbuch Verlag ISBN 3-4993 499-60074-9 19,90 DM http://www.erlenkoetter.de Walter Herglotz Das Einsteigerseminar C++ bhv Verlags

Mehr

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays)

1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) 1. Erste Schritte 2. Einfache Datentypen 3. Anweisungen und Kontrollstrukturen 4. Verifikation 5. Reihungen (Arrays) II.1.3. Anweisungen und Kontrollsttukturen - 1 - 3. Anweisungen und Kontrollstrukturen

Mehr

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen

Teil 5 - Java. Programmstruktur Operatoren Schlüsselwörter Datentypen Teil 5 - Java Programmstruktur Operatoren Schlüsselwörter Datentypen 1 Kommentare in Java In Java gibt es drei Möglichkeiten zur Kommentierung: // Kommentar Alle Zeichen nach dem // werden ignoriert. für

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - 1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.

Mehr

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert

Mehr

Institut für Programmierung und Reaktive Systeme 25. Januar Programmieren I. Übungsklausur

Institut für Programmierung und Reaktive Systeme 25. Januar Programmieren I. Übungsklausur Technische Universität Braunschweig Dr. Werner Struckmann Institut für Programmierung und Reaktive Systeme 25. Januar 2018 Hinweise: Klausurtermine: Programmieren I Übungsklausur Programmieren I: 17. Februar

Mehr

Anweisungen zur Ablaufsteuerung

Anweisungen zur Ablaufsteuerung Anweisungen zur Ablaufsteuerung if-else switch while do-while for Ausdrücke Ein Ausdruck ist eine Folge von Variablen, Operatoren und Methodenaufrufen, der zu einem einzelnen Wert ausgewertet wird. Operanden

Mehr

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005

Einführung in Java. PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Einführung in Java PING e.v. Weiterbildung Andreas Rossbacher 24. März 2005 Gliederung 1. Was ist Java / Geschichte von Java 2. Prinzip der Plattformunabhängigkeit 3. Wie kommt man vom Quellcode zum Programm

Mehr

Primitive Datentypen

Primitive Datentypen Primitive Datentypen 2 Arten von Datentypen: primitive Datentypen (heute) Objekte (später) Java ist streng typisiert, d.h. für jede Variable muß angegeben werden was für eine Art von Wert sie aufnimmt.

Mehr

Kurzeinführung in C99

Kurzeinführung in C99 Kurzeinführung in C99 Institut für Numerische Simulation Rheinische Friedrich-Wilhelms-Universität Bonn Oktober 2013 Überblick 1 Compiler und Editoren - Was wird benötigt um ein Programm zu erstellen 2

Mehr

II.1.1. Erste Schritte - 1 -

II.1.1. Erste Schritte - 1 - 1. Grundelemente der Programmierung 2. Objekte, Klassen und Methoden 3. Rekursion und dynamische Datenstrukturen 4. Erweiterung von Klassen und fortgeschrittene Konzepte II.1.1. Erste Schritte - 1 - 1.

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 29

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

2 Eine einfache Programmiersprache

2 Eine einfache Programmiersprache 2 Eine einfache Programmiersprache Eine Programmiersprache soll Datenstrukturen anbieten Operationen auf Daten erlauben Kontrollstrukturen zur Ablaufsteuerung bereitstellen Als Beispiel betrachten wir

Mehr

Tag 4 Repetitorium Informatik (Java)

Tag 4 Repetitorium Informatik (Java) Tag 4 Repetitorium Informatik (Java) Dozent: Michael Baer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2017/2018 Übersicht Arrays (Reihungen)

Mehr

Einführung in die Programmierung

Einführung in die Programmierung Einführung in die Programmierung by André Karge Übung - Operatoren, Methoden, Primitives 25. Oktober 2018 Einführung in die Programmierung WS18/19 André Karge 1/29 Notizen Standard Linux Befehle: http://images.linoxide.com/linux-cheat-sheet.pdf

Mehr

WS2017/ Oktober 2017

WS2017/ Oktober 2017 Ronja Düffel WS2017/18 05. Oktober 2017 mit Python Programmieren (vereinfacht) 1 Problem beschreiben und analysieren 2 Enwicklung und Beschreibung einer Lösung 3 Übertragung/Umsetzung in eine Programmiersprache

Mehr

Objektorientierte Programmierung

Objektorientierte Programmierung Objektorientierte Programmierung Eine Einführung mit anschaulichen Beispielen aus der Java-Welt apl. Prof. Dr. Achim Ebert Inhalt Kapitel 3: Kontrollstrukturen Einfache Anweisungen Anweisungsblöcke Steuerung

Mehr

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz

Einführung Sprachfeatures Hinweise, Tipps und Styleguide Informationen. Einführung in C. Patrick Schulz Patrick Schulz patrick.schulz@paec-media.de 29.04.2013 1 Einführung Einführung 2 3 4 Quellen 1 Einführung Einführung 2 3 4 Quellen Hello World in Java Einführung 1 public class hello_ world 2 { 3 public

Mehr

Programmiervorkurs. Wintersemester 2013/2014

Programmiervorkurs. Wintersemester 2013/2014 Programmiervorkurs Wintersemester 2013/2014 Programmiervorkurs Wintersemester 2013/2014 Organisation: Tutoren: Steffen Gebert, Alexander Wolff Johannes Grohmann, Anna Seufert, Anna Aumann, Nicolas Färber,

Mehr

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny

Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 5. Kontrollstrukturen Allgemein Kontrollstrukturen dienen zur Steuerung des Programmablaufs. (Bemerkung: C und C++ besitzen die selben Kontrollstrukturen.)

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen } } Anweisungen mit Variablen Wiederholung Deklaration

Mehr

Programmierung mit Java

Programmierung mit Java JUSTUS-LIEBIG-UNIVERSITÄT GIESSEN ALLG. BWL UND WIRTSCHAFTSINFORMATIK UNIV.-PROF. DR. AXEL C. SCHWICKERT Übungsaufgaben zur Lehrveranstaltung Programmierung mit Java Übung im Master-Modul Systems Engineering

Mehr

Einführung Java Programmieren in Java Arrays Schleifen Fehler. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann

Einführung Java Programmieren in Java Arrays Schleifen Fehler. Einführung in Java. Arne Hüffmeier. Michelle Liebers, Dennis Hoffmann Einführung in Java Arne Hüffmeier Michelle Liebers, Dennis Hoffmann Tilman Lüttje, Jean Wiele Angelehnt an Java-Vorkurs der Freitagsrunde 1 / 64 1 Einführung Java Geschichte 2 Programmieren in Java Einführung

Mehr

Wie entwerfe ich ein Programm?

Wie entwerfe ich ein Programm? Wie entwerfe ich ein Programm? Welche Objekte brauche ich? Flussdiagramme für Programmablauf Vorcode Testcode Hauptcode Wir spielen Lotto! Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 5 +

Mehr

Probeklausur Name: (c)

Probeklausur Name: (c) Einführung in die Praktische Informatik 30.1.2013 Probeklausur Name: Teil I: Datentypen (20 Punkte) Lösen sie die Probleme, indem sie die korrekten Lösungen ankreuzen bzw. in die vorgesehenen Freiräume

Mehr

PROGRAMMIERUNG IN JAVA

PROGRAMMIERUNG IN JAVA 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

Mehr

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.

Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5. Programmierstarthilfe SS 2010 Fakultät für Ingenieurwissenschaften und Informatik 2. Blatt Für die Woche vom 3.5. bis zum 7.5.2010 (KW 18) Organisatorisches Im Web unter http://www.uni-ulm.de/in/programmierstarthilfe.html

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

Java I Vorlesung Imperatives Programmieren

Java I Vorlesung Imperatives Programmieren Java I Vorlesung 2 Imperatives Programmieren 3.5.2004 Variablen -- Datentypen -- Werte Operatoren und Ausdrücke Kontrollstrukturen: if Imperatives Programmieren Im Kern ist Java eine imperative Programmiersprache.

Mehr

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe Informatik Vorlesung 03b Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe 12. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik

Mehr

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22

C++ Teil 2. Sven Groß. 16. Apr IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil Apr / 22 C++ Teil 2 Sven Groß IGPM, RWTH Aachen 16. Apr 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 2 16. Apr 2015 1 / 22 Themen der letzten Vorlesung Hallo Welt Elementare Datentypen Ein-/Ausgabe Operatoren Sven

Mehr

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin

Einführung in C. Alexander Batoulis. 5. Mai Fakutltät IV Technische Universität Berlin Fakutltät IV Technische Universität Berlin 5. Mai 2014 Inhaltsverzeichnis 1 2 3 4 5 6 7 Überblick Beispielprogramm in Java Beispielprogramm in C 1 2 3 4 5 6 7 Beispielprogramm in Java Beispielprogramm

Mehr