INE2 Von C zu Java Teil 2: Arrays und Strings. Arrays Werte- und Referenzdatentypen Strings
|
|
- Astrid Günther
- vor 6 Jahren
- Abrufe
Transkript
1 INE2 Von C zu Java Teil 2: Arrays und Strings Arrays Werte- und Referenzdatentypen Strings 1
2 Arrays 2 von 65
3 Array Was ist ein Array? Index: Ein Array ist eine Gruppe von Variablen gleichen Typs und gleicher Bedeutung, die sinnvoll unter demselben Namen angesprochen und intern durchnummeriert werden 3 von 65
4 Array Entspricht einer Tabelle mit nur einer Zeile Variablenname bezeichnet die ganze Tabelle Einzelner Eintrag: Element, Komponente Merkmale Alle Daten eines Arrays haben den gleichen Datentyp Einzelnes Element wird durch seinen Index adressiert 4 von 65
5 Arrays in C (Wh) Wie haben wir Array-Variablen in C definiert? Zum Beispiel: Die sechs Lottozahlen? Die Anzahl Tage jedes Monats im Jahr? Muss man bei der Definition einer Array-Variablen in C die Array-Grösse angeben? Welche zwei Möglichkeiten zum Anlegen und Verwenden von Arrays gibt es in C? 5 von 65
6 Deklaration eines Arrays in Java Datentyp[] Arrayname; Datentyp: Datentyp der einzelnen Elemente Das Array existiert nach der Deklaration noch nicht, erst der Variablenname Die Anzahl Elemente im Array sind ebenfalls noch nicht bestimmt Beispiel: int[] fahrtenamso; 6 von 65
7 Arrays / Felder Array-Datentyp Element-Datentyp int[] Element-Datentyp Array-Datentyp Beachte: Die tatsächliche Länge des Array gehört nicht zum Array-Datentyp Deklaration,nur die Tatsache, dass es ein Array ist! 7 von 65
8 Anlegen eines Arrays in Java Arrayname = new Datentyp [Arraygrösse]; Beispiel: fahrtenamso = new int[8]; Reserviert Speicher für einen Array mit 8 Elementen vom Typ int 8 von 65
9 Unterschied C Java C int a[5]; // deklariert a und reserviert Platz fuer // 5 int Java int[] a; // deklariert a a = new int[5]; // reserviert Platz fuer 5 int C int * a; // oder int a[] in Funktionsdeklaration a = (int *)malloc(5*sizeof(int)); // reserviert Platz fuer 5 int 9 von 65
10 Initialisierung Array-Elemente bei der Erzeugung auf die Default-Werte gesetzt Für int-arrays ist der Default-Wert 0 Möglichkeiten zur expliziten Initialisierung: Jedes Element einzeln: fahrtenamso[0] = 1; fahrtenamso[1] = 1;... fahrtenamso[7] = 1; Besser: Mit for-schleife: for (int i=0; i<8; i++){ fahrtenamso[i] = 1; } Direkt bei der Deklaration des Arrays: int[] fahrtenamso = {1,1,1,1,1,1,1,1}; 10 von 65
11 Initialisierung Wenn ein Array direkt initialisiert wird, wird dabei auch die Grösse des Arrays festgelegt: double[] messwerte= {1.5, 7.3, 3.6, 9.4}; // Grösse 4 Der Initialisierungsausdruck mit geschweiften Klammern ist nur bei der Deklaration erlaubt double[] messwerte; messwerte = {1.5, 7.3, 3.6, 9.4}; // geht nicht! messwerte = new double[] {1.5, 7.3, 3.6, 9.4}; // ok 11 von 65
12 Zugriff auf Array-Elemente Arrayname[index] Greift auf das Element mit dem angegebenen Index zu Das erste Element hat den Index 0! Ein Array-Element kann verwendet werden wie eine Variable vom entsprechenden Datentyp: Zuweisung, Eingabe, Ausgabe, Argument bei Methodenaufruf, usw. Beispiel: wert = a[index]; // ein Element lesen a[index] = 5; // in ein Element schreiben 12 von 65
13 Länge eines Arrays Die Länge eines Arrays wird beim Erzeugen festgelegt Sie kann dann nicht mehr verändert werden Sie ist in einer Instanzenvariable des Array-Objekts gespeichert: arrayname.length Achtung: Das ist keine Methode, also nicht: arrayname.length() 13 von 65
14 Final, Umgang mit Array-Elementen Oft werden Arrays mit for-schleifen bearbeitet final int ANZAHL = 100; int[] zweierreihe; zweierreihe = new int[anzahl]; for (int i = 0; i < zweierreihe.length; i++) { zweierreihe[i] = i*2; } Tipp: Array-Grössen in Konstanten (mit final) angeben mit length arbeiren 14 von 65
15 Umgang mit Arrays Arrays sind Java-Objekte Sie werden sie als Referenz (s.u.) übergeben Bei der Parameterdeklaration im Methodenkopf muss die Länge des übergebenen Arrays nicht spezifiziert werden: public int summe(int[] arr) { } von 65
16 Umgang mit Arrays: Beispiel int summe(int[] arr) { int total = 0; for (int i =0; i < arr.length; i++) { total = total + arr[i]; } return total; } Aufruf: int[] reihe = {1,2,3,4}; int sum; sum = summe(reihe); 16 von 65
17 Übung Schreiben Sie eine Methode, die das grösste Element in einem beliebig langen Array von ganzen Zahlen zurückgibt Die Methode soll nur den Wert des grössten Elementes zurückgeben 17 von 65
18 Arrays von Objekten Array von Strings: String[] arbeitstage = {"Montag", "Dienstag", "Mittwoch", "Donnerstag", "Freitag"}; int tag = 2; String tagname; tagname = arbeitstage[tag]; Welchen Index hat der Dienstag? 18 von 65
19 Zweidimensionale Arrays Beispiel: Umsatzzahlen eines Geschäftes mit 3 Filialen für eine Woche 19 von 65
20 Zweidimensionale Arrays in Java Array, dessen Elemente ebenfalls wieder Arrays sind Deklaration: Datentyp[][] Arrayname; Erzeugung des Arrays: Arrayname = new Datentyp [AnzahlZeilen][AnzahlSpalten]; Beispiel: int[][] umsatz; umsatz = new int [3][7]; 20 von 65
21 Zweidimensionale Arrays in Java Initialisierung Bei der Deklaration: int [][] tabelle = {{1,0,1},{0,1,0}}; Im Programmcode mit for-schleifen Zugriff auf Array-Elemente Arrayname[zeilenindex][spaltenindex] Beispiel: // Element in der 3. Zeile und 4. Spalte des Arrays umsatz: int ums = umsatz[2][3]; 21 von 65
22 Zweidimensionale Arrays in Java Um die höheren Dimensionsgrenzen zu bestimmen: Datentyp[0].length int ums = umsatz[2][3]; int total = berechnegesamtumsatz(umsatz);... int berechnegesamtumsatz(int[][] umsatz) { int summe = 0; for (int filiale = 0; filiale < umsatz.length; filiale ++) { for (int wochentag = 0; wochentag < umsatz[0].length;wochentag++) { summe += umsatz[filiale][wochentag]; } } return summe; } 22 von 65
23 Mehrdimensionale Arrays in Java Funktionieren analog 23 von 65
24 Programmierfehler Der gewählte Index liegt ausserhalb des erlaubten Bereichs ArrayIndexOutOfBoundsException Ein Array wird verwendet, bevor es erzeugt wird Nullpointer-Exception In Java ist es nicht möglich ausserhalb der Array Grenzen zuzugreifen In Java gibt es das Dangling Pointer Problem nicht 24 von 65
25 Referenzdatentypen 25 von 65
26 Referenzdatentyp Array sind Referenzendatentypen Im Gegensatz zu Wertedatentypen Wertedatentypen (Wh): Speichern und Verarbeiten einzelne Werte (Zahlen, Buchstaben, logische Werte) Variablenname bezeichnet den Speicherplatz, wo der Wert abgespeichert ist Speicherplatz wird bei der Deklaration der Variablen reserviert 26 von 65
27 Wertedatentypen (Whd) Nur ein Wert int, float, double, boolean, char,... Bei Zuweisungen und Methodenaufrufen wird nur Kopie des Wertes übergeben ( by value ) a = 5; b = 7; b = a; a 5 b von 65
28 Referenzdatentyp Speichern und Verarbeiten mehrerer Werte zusammen Die einzelnen Werte vom gleichen oder von unterschiedlichem Datentyp sein Beispiel: Klassen, Arrays (Felder) Bei der Deklaration der Variablen wird nur Platz für die Adresse der eigentlichen Daten reserviert Daher auch als Referenzdatentypen bezeichnet 28 von 65
29 Speicherbereich anlegen Der Speicherbereich für die eigentlichen Daten wird durch eine explizite Anweisung dynamisch im Arbeitsspeicher (Heap) angelegt: fahrtenamso = new int[8]; // Array Der benötigte Speicherplatz wird im Arbeitsspeicher reserviert und die Startadresse dieses Speicherbereichs in den Speicherplatz für die Referenz abgelegt Vor der Erzeugung des Objekts enthält die Variable noch keine gültige Referenz (null) 29 von 65
30 Referenzdatentypen Bei Zuweisungen und Methodenaufrufen wird nur Kopie der Adresse (Referenz) übergeben Nach einer Zuweisung existieren 2 Referenzen auf dasselbe Objekt double[] messwerte = {... }; double[] neuewerte; neuewerte = messwerte; messwerte neuewerte Ref null Ref 30 von 65
31 Datenübergabe Wertedatentypen: Bei der Zuweisung oder der Übergabe von Daten an Methoden wird der Wert der Variablen übergeben ( call by value ) Referenzdatentypen: Wie bei einfachen Typen, der Wert ist dann aber eine Referenz, d.h. die Adresse der Daten Nach einer Zuweisung var1 = var2; stellen beide Variablen also Referenzen auf dieselben Daten dar Bei der Datenübergabe an eine Methode werden ebenfalls Referenzen übergeben: Methode arbeitet mit den Originaldaten, nicht mit einer Kopie! 31 von 65
32 Methodenaufruf public void foo() int[] a = {1,2,3,4}; bar( a ); System.out.println("Result = "+ a[0]); } public void bar(int[] b) { } b[0] = 2; Button 1,2,3,4 A 32 von 65
33 Strings 33 von 65
34 Strings in Java Ein String (eine Zeichenkette) ist eine beliebig lange Folge von Zeichen (Characters): Ich bin ein String _owjddpoie;:-opüäw%jpowb +^\/wljd Strings werden in Programmen sehr häufig verwendet Ausgabe von Meldungen Einlesen von Benutzereingaben Lesen und Schreiben von Textdateien Namen von Verzeichnissen, URLs In Java werden Strings als Objekte behandelt Ein Objekt enthält einen String beliebiger Länge Die Zeichen im String werden wie in einem Array indexiert: 0...(Länge 1) S t r i n g (0) von 65
35 Deklaration und Initalisierung Referenzdatentyp: String String ist ein Object -> Referenztyp Strings sind unveränderbar d.h. der Wert des Strings kann während der Lebensdauer des Objekts nicht (mehr) geändert werden. Deklaration, Initialisierung: String stringname [= "Zeichenfolge"]; Zeichenfolgen (String Literals) stehen immer zwischen doppelten Anführungszeichen Frage: Unterschied zw. c = 'a' und s = "a"? Beispiele: String name; String name = new ("Hugo"); name name "Hugo" "Hugo" 35 von 65
36 Erzeugung von Strings Erzeugung von Strings name = new String("Hugo"); str = "Hello"; // gebräuchliche Schreibweise String str = "Hello"; // Deklaration und Initialisierung String str = ""; // Leerer String str = name; Dabei werden nicht einfach die Referenzen kopiert! Sondern str wird i.d.r. Kopie von name zugewiesen Obwohl Strings Objekte sind, verhalten Sie sich (meist) wie Wertedatentypen name name "Hugo" "Hugo" str = name; copy str str "Hugo" "Hugo" 36 von 65
37 Array of Strings Array of Strings: String[] staedte = new String[2]; staedte[0] = "Winterthur"; staedte[1] = "Zuerich"; Erzeugung von Arrays of Strings String [] bergsteiger = {"Messner","Seiler","Sherpa","Yeti"}; 37 von 65
38 Strings als Methodenparameter Bereits bei Zuweisungen von Strings haben wir gesehen, dass sich Strings wie Wertedatentypen verhalten: String str1 = "Hello, World"; String str2 = str1; // Kopie von str1 wird erstellt Dasselbe gilt für die Parameterübergabe: Der übergebene String verhält sich in der Methode wie eine lokale Kopie Änderungen innerhalb der Methode haben keinen Einfluss auf den übergebenen String Sollen die Änderungen zurückgegeben werden return Beispiel: private String dupliziere(string str) { str = str + str; return str; } str2 = dupliziere(str1); 38 von 65
39 Stringgrundoperationen 39 von 65
40 Konvertierung und Verkettung von Strings Konvertierung einer Zahl in einen String: int zahl = 123; String zahlstr1 = "" + zahl; // implizit String zahlstr2 = Integer.toString(zahl); // explizit i.m. zahl = Integer.parseInt("123"); Zusammenhängen von Strings mit dem + Operator: String str1 = "Hello, "; String str2 = "World!"; String str3 = str1 + str2; // Hello, World! Verketten mit Zahlen: String str1 = "Hallo " ; // "Hallo 12" String str2 = "Hallo " + (1 + 2); // "Hallo 3" 40 von 65
41 Vergleich von Strings Test auf Gleichheit häufige gemachter Fehler: verwenden von "==": String s = "abc"; // new String("abc") String t = "abc"; // new String("abc") if (s == t) {} : testet auf Gleichheit von Referenz = false equals-methode von String verwenden if (s.equals(t)) {} : teste auf Gleichheit von Wert = true equalsignorecase ignoriert Grossklein-Schreibung String v = "ABC"; s.equalsignorecase(v); s s s == t; "abc" "abc" s.equals(t); t t "abc" "abc" 41 von 65
42 Reihenfolge von Strings int compareto(string str); compareto Methode bestimmt Reihenfolge String a = "ameise"; String b = "biene" int n = a.compareto(b); n == 0: n < 0: n > 0: a ist gleich b a steht vor b "ameise" < "biene" a steht nach b Aber : "ameise" kommt nach "Biene" (Zeichen-Code Reihenfolge) Lexikographischer Vergleich von str mit dem gegebenen String Strings werden zeichenweise von links nach rechts verglichen Kein Zeichen kommt vor Sonderzeichen kommt vor Zahlen kommt vor Grossbuchstaben kommt vor Kleinbuchstaben (entspricht dem jeweiligen Unicode der Zeichen) "a" kommt vor "b" "a" kommt nach "Z" "abcdzzzz" kommt vor "abce" "a" kommt vor "ab" "a1 " kommt nach "a1" "Anna" kommt vor "anna" "10" kommt vor "2" 42 von 65
43 Stringmanipulationen 43 von 65
44 String-Methoden Manipulationen Wichtig: der aktuelle String wird nicht verändert, sondern Methode gibt einen neuen String zurück (Strings = immutable Objects)! String replace(char alt, char neu); String replace(string alt, string neu); String str1 = "Abrakadabra"; String str2 = str1.replace('a', 'u'); // Abrukudubru str2 = str2.replace('u', 'a'); // es wird ein neues str2 kreiert String tolowercase(); str2 = str1.tolowercase(); // abrakadabra String touppercase(); str2 = str1.touppercase(); // ABRAKADABRA String trim(); Entfernt White Space am Anfang und am Ende str1 = " \t viel leerer Raum \n\n \t "; str2 = str1.trim(); // viel leerer Raum 44 von 65
45 Bei umfangreichen String Manipulationen StringBuffer (oder StringBuilder) für umfangreiche Manipulationen auf Strings Inhaltsveränderung bei StringBuffer möglich! Enthält Methoden, um den eingebetteten String direkt zu manipulieren (z.b. insert, append) Beispiel umfangreiche Mutationen auf Strings: nicht String s = ""; for (int i = 0; i < 1000; i++) { s = s + i; } sondern StringBuilder buf = new StringBuilder(); for (int i = 0; i < 1000; i++) { buf.append(integer.tostring(i)); buf.append(","); } String s = buf.tostring(); 45 von 65
46 String-Methoden Untersuchung Beispiel-String für die nachfolgenden Methoden: String str1 = "eins zwei drei"; // Position Achtung: Achtung: bei bei Arrays: Arrays: array.length array.length (ohne (ohne Klammern) Klammern) int length(); int len = str1.length(); // 14 // Methode: gibt zurück Anz. Chars im String char charat(int index); str1 = "eins zwei drei"; char zeichen = str1.charat(2); // n int indexof(string str); int indexof(string str, int index); Sucht str im gegebenen String; Beginn der Suche bei index oder von Anfang an Gibt Position des ersten Auftretens zurück oder -1 falls nicht gefunden int pos = str1.indexof("dre", 6); // von 65
47 String-Methoden Untersuchung int lastindexof(string str); int lastindexof(string str, int index); Wie indexof, sucht aber das letzte Auftreten von str Sucht rückwärts, beginnend bei index oder vom Ende weg int pos = str1.lastindexof("e"); // 12 boolean startswith(string str); boolean endswith(string str); true, wenn der gegebene String mit str beginnt/endet, sonst false 47 von 65
48 Zerlegung von Strings 48 von 65
49 Zerlegung von Strings Oftmals ist man nur an einem Teil des Strings interessiert Herauslösen eine Teilstrings aus dem Original anhand Positionen : z.b anhand Muster im String: z.b. "IP Adresse= " Zerteilen des Strings in Teile, die durch Trennzeichen getrennt sind z.b. "23, 454, 63, 21, 56" 49 von 65
50 Anhand Positionen String substring(int start, int afterend); Gibt Substring zwischen den Zeichen start (inkl. und afterend (exkl.) zurück String str1 = "Biene" String str2 = str1.substring(1, 4); // ien String str3 = str1.substring(1); //bis zum Schluss: iene Das erste Zeichen hat Index 0 Das zweite optionale Argument ist der Index des ersten Zeichens nach dem gewünschten Teilstring Vorsicht beide Werte müssen im gültigen Index Bereich des Strings sein, sonst Laufzeitfehler B i e n e von 65
51 Zerteilen von Strings: StringTokenizer StringTokenizer (Zer-)teilt einen String in Substrings (Tokens) auf; die Tokens im String sind durch Grenzmarken abgetrennt Grenzmarken basieren auf einer Liste der Zeichen Mögliche Anwendung: Untersuchung von Daten aus einem Text-File, einzelne Datensätze sind z.b. durch Komma, Leerzeichen Zeilenumbruch oder Tab getrennt Generierung der Tokens: String data = "4, 5, 6 2,8,, 100, 18"; StringTokenizer tokens = new StringTokenizer(data, "\t\n,"); java.util.* java.util.* Resultiert in 7 Tokens: Man beachte: Folgen von Trennzeichen werden zusammengefasst Die Tokens sind im StringTokenizer-Objekt enthalten und können nachfolgend abgefragt werden String String mit mit Trennzeichen: Trennzeichen: tab, tab, Leerzeichen; Leerzeichen; Zeilenumbruch Zeilenumbruch oder oder "," "," 51 von 65
52 Abfragen der Tokens im StringTokenizer String nexttoken(); Gibt das vorderste Token zurück und entfernt es von der Liste der Tokens boolean hasmoretokens(); Testet, ob noch Tokens vorhanden sind int counttokens(); Gibt die Anzahl noch vorhandener Tokens zurück Beispiel Tokenizer tokens = new StringTokenizer(data, "\t\n,"); while (tokens.hasmoretokens()) { System.out.println(tokens.nextToken())); } alternative dazu "split" verwenden -> später 52 von 65
53 Reguläre Ausdrücke 53 von 65
54 Reguläre Ausdrücke: Regex Zum Suchen von definierten Mustern in Texten d.h. Strings ein bestimmter String: "ZHAW" Muster kann "unscharf" definiert sein: z.b. ST15a, ST15b,ST14ac (Teil-)Muster kann sich wiederholen: Die meisten heutigen Programmiersprachen unterstützen die Suche nach Muster in Form von reguläre Ausdrücke (Regular Expressions oder kurz Regex) Regex ist unabhängig von Java definiert Java Klassenbibliothek definiert im Package java.util.regex die Klassen Pattern und Matcher 54 von 65
55 Definition des regulären Ausdrucks Zuerst muss der reguläre Ausdruck vorbereitet werden Die Klasse Pattern Pattern pat = Pattern.compile("ZHAW"); Das Muster kann im einfachsten Fall ein Textzeichen-String sein Alle Zeichen sind erlaubt ausser: ([{\^-$ ]})?*+. Diese müssen mit \ vorangestellt geschrieben werden Vorsicht in Java String Konstante muss "\\" für "\" geschrieben werden Beispiel Pattern pat = Pattern.compile("wie geht's \\?"); 55 von 65
56 Abfrage nach den gefundenen Stellen Ausgabe der gefundenen Stellen Die Klasse Matcher Matcher matcher = pat.matcher("willkommen an der ZHAW"); Suche nächste Textstelle boolean find() true falls gefunden matcher.find(); Gebe gefunden Teilstring zurück String group() matcher.group(); ZHAW Start und Endposition innerhalb String int start() und int end() matcher.start(); //18 matcher.end(); //22 56 von 65
57 Vollständiges Beispiel import java.util.regex.*; Pattern pat = Pattern.compile("ZHAW"); Matcher matcher = pat.matcher("willkommen an der ZHAW"); while (matcher.find()) { String group = matcher.group(); int start = matcher.start(); int end = matcher.end(); // do something } 57 von 65
58 Platzhalter Oftmals wird nach unscharfen Muster gesucht, z.b. alle ET Klassen Es sind Platzhalter Zeichen erlaubt, die Zeichenmengen matchen z.b. "." für beliebiges Zeichen "\d" für Zahl, ^\d für keine Zahl Platzhalter Beispiel Bedeutung Menge der gültigen Literale. a.b Ein beliebiges Zeichen aab, acb, azb, a[b,... \d \d\d Digit[0-9] 78, 10 \D \D kein Digit a, b, c ^ ^\d Negation a, b, c \s \s Leerzeichen (Blank,etc) blank, tab, cr, \S \S kein Leerzeichen Aufgabe: Geben Sie das Suchmuster für beliebige ST Klassen an: ST15a, ST15b, ST14a ET\d\d. 58 von 65
59 Eigene Zeichenmengen Statt vordefinierte Zeichenmengen zu verwenden, können auch eigene definiert werden diese werden in "[" "]" geklammert Aufzählung der Zeichen in der Zeichenmenge ein Zeichen aus der Menge z.b. "a", "b" oder "c" : [abc] Bereiche z.b. alle Kleinbuchstaben [a-z] alle Buchstaben [a-za-z] Negation: Alle Zeichen ausser z.b. [^a] Aufgabe: Geben Sie das Suchmuster für beliebige ET Klassen an; es gäbe aber nur "a" bis "d" ET\d\d[a-d] 59 von 65
60 Optional, Alternative und Wiederholung Optionale Teile:? wenn einzelner Buchstaben optional, z.b. ZHA?W -> ZHW oder ZHAW Alternative wenn ein A oder B -> ZH(A B)W -> ZHAW oder ZHBW "natürliche" Verwendung von Klammern Wiederholungen Beliebig oft * eine Folge von Ziffern \d* -> _, 2,23,323,423,.. Mindestens einmal + eine Folge von Ziffern aber mindest eine \d+ -> 3,34,234, Bestimmte Anzahl mal {n} Auch Auch 0 0 mal mal erlaubt erlaubt eine Folge von drei Ziffern \d{3} -> 341,241,123.. Mindestens, maximal Anzahl mal {n,m} eine Folge von 1 bis 3 Ziffern \d{1,3} -> 1, 23, 124, von 65
61 Zusammenfassung Metasymbole (Meta-)Sprache zur Beschreibung der Bildungsregeln von Sätzen Metasymbole: *,+,?,,(),.[] Metasymbol Beispiel Bedeutung Menge der gültigen Literale * ax*b 0 oder mehrere x ab, axb, axxb, axxxb,... + ax+b 1 oder mehrere x axb, axxb, axxxb,...? ax?b x optional ab, axb a b a oder b a, b () x(a b)x Gruppierung xax, xbx. a.b Ein beliebiges Zeichen aab, acb, azb, a[b,... [] [abc]x 1 Zeichen aus einer Menge ax, bx, cx [-] [a-h] Zeichenbereich a,b,c,..., h \d \d\d Digit[0-9] 78, 10 \D \D kein Digit a, b, c ^ ^\d Negation a, b, c \s \s Leerzeichen (Blank,etc) blank, tab, cr, \S \S kein Leerzeichen 61 von 65
62 Weitere String-Methoden für Regex Prüfe of String einem Regex Muster entspricht boolean matches(string regexp); String text = "Hallo Welt"; boolean passt; passt = text.matches("h.*w.*"); passt = text.matches("h..o Wel?t"); passt = text.matches("h[alo]* W[elt]+"); passt = text.matches("hal+o Welt.+"); // true // false // true // false Aufgabe: Regex zum Prüfen ob ein String eine Int Zahl enthält -?\d+ Aufgabe: Regex zum Prüfen ob ein String eine IP Adresse enthält \d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3} 62 von 65
63 Weitere String-Methoden für Regex String replaceall(string regexp, String replacestr); String replacefirst(string regexp, String replacestr); Ersetzt im gegebenen String alle (bzw. den Ersten bei replacefirst) Substrings, die regexp entsprechen, mit replacestr String new = text.replaceall("l+", "LL"); // HaLLo WeLLt String[] split(string regexp); Teilt den gegebenen String in mehrere Strings, regexp ist die Grenzmarke Das Resultat ist ein Array mit Teilstrings String data = "4, 5, 6 2,8,, 100, 18" String[] teile = data.split("[,]+"); // Menge der Zeichen " " und"," // // teile[0] = "4", teile[1] = "5",. 63 von 65
64 Reguläre Ausdrücke Übung 64 von 65
65 Noch Fragen? 65 von 65
Arrays. Einleitung. Deklarieren einer Array Variablen
Arrays Einleitung bisher jede Variable einzeln deklariert: 12 3 14 12 32 32 3 32 5 3 double sum; int count; ÿ Sie können Zweck und Aufbau von Array-Datentypen erklären ÿ Sie können einen Array korrekt
MehrMartin 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
Mehr1. Referenzdatentypen: Felder und Strings. Referenz- vs. einfache Datentypen. Rückblick: Einfache Datentypen (1) 4711 r
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
Mehr1. Referenzdatentypen: Felder und Strings
1. Felder und Strings Eigenschaften von Referenzdatentypen 1. Referenzdatentypen: Felder und Strings Referenzdatentypen sind Konstrukte, mit deren Hilfe wir aus einfachen Datentypen neue eigene Typen erzeugen
Mehr1 Hashing und die Klasse String
1 Hashing und die Klasse String Die Klasse String stellt Wörter von (Unicode-) Zeichen dar. Objekte dieser Klasse sind stets konstant, d.h. können nicht verändert werden (immutable). Die Zeichenkette ist
MehrTag 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)
MehrEinführung in die Programmierung
Skript zur Vorlesung: Einführung in die Programmierung WiSe 2009 / 2010 Skript 2009 Christian Böhm, Peer Kröger, Arthur Zimek Prof. Dr. Christian Böhm Annahita Oswald Bianca Wackersreuther Ludwig-Maximilians-Universität
MehrKapitel 3: Variablen
Kapitel 3: Variablen Thema: Programmieren Seite: 1 Kapitel 3: Variablen Im letzten Kapitel haben wir gelernt, bestimmte Ereignisse zu wiederholen solange eine Bedingung erfüllt ist. Nun möchten wir aber
MehrEinführung in die Programmierung für NF MI. Übung 04
Einführung in die Programmierung für NF MI Übung 04 Inhalt Arrays Einführung in Objekte Einführung in die Programmierung für NF Übung 04 2 Arrays Arrays repräsentieren Reihungen von Objekten, z.b. Variablen
Mehr3.2 Datentypen und Methoden
Kap03.fm Seite 217 Dienstag, 7. September 2010 1:48 13 3.2 Datentypen und Methoden 217 3.2 Datentypen und Methoden Wie bei vielen höheren Programmiersprachen gibt es auch in Java einfache und strukturierte
MehrFH D. Objektorientierte Programmierung in Java FH D FH D. Prof. Dr. Ing. André Stuhlsatz. Referenzen. Referenzen
5 Objektorientierte Programmierung in Java Prof. Dr. Ing. André Stuhlsatz Referenzen Beispiel an der einfachen Klasse Walze: public class Walze { int id; public Walze(int id) { this.id = id; Verwenden
MehrVerarbeitung von Zeichenketten
Verarbeitung von Zeichenketten Character Die Character-Klassebietet statische Prüffunktionen isxxx(), die bestimmen, ob ein char einer gewissen Kategorie angehört. (Ist der char eine Ziffer, ein Leerzeichen,
MehrInstitut für Programmierung und Reaktive Systeme. Java 3. Markus Reschke
Java 3 Markus Reschke 08.10.2014 Kommentare Kommentare nützlich zum späteren Verständnis Zwei Arten Einzeiliger Kommentar bis zum Zeilenende mit // Mehrzeiliger Kommentar mit /*Text*/ 1 double x = 5; //
MehrJava Datentypen und Variablen
Informatik 1 für Nebenfachstudierende Grundmodul Java Datentypen und Variablen Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht
MehrEinstieg in die Informatik mit Java
1 / 27 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 27 1 Überblick: Klassen als Datenstruktur 2 Vereinbarung
MehrDie for -Schleife HEUTE. Schleifen. Arrays. Schleifen in JAVA. while, do reichen aus, um alle iterativen Algorithmen zu beschreiben
18.11.5 1 HEUTE 18.11.5 3 Schleifen Arrays while, do reichen aus, um alle iterativen Algorithmen zu beschreiben Nachteil: Steuermechanismus ist verteilt Übersicht nicht immer leicht dazu gibt es for (
MehrFelder. Gerd Bohlender. Einstieg in die Informatik mit Java, Vorlesung vom
Einstieg in die Informatik mit Java, Vorlesung vom 9.5.07 Übersicht 1 Was sind? 2 Vereinbarung von n 3 Erzeugen von n 4 Zugriff auf Feldkomponenten 5 Mehrdimensionale 6 als Objekte, Referenzen Kopieren
MehrKapitel 10. Programmierkurs. Grundlagen von Exceptions Behandlung von Exceptions
Kapitel 10 Programmierkurs Birgit Engels Anna Schulze Zentrum für Angewandte Informatik Köln Exceptions Behandlung von Exceptions Der finally-block catch or throw WS 07/08 1/ 23 2/ 23 Grundlagen von Exceptions
MehrEinstieg in die Informatik mit Java
1 / 26 Einstieg in die Informatik mit Java Felder Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Was sind Felder? 2 Vereinbarung von Feldern 3 Erzeugen von Feldern
MehrKurs OPR. Objektorientierte Programmierung
Kurs OPR Objektorientierte Programmierung Lektion: 004-Mehrd.Array, Strings etc. Zürcher Hochschule für Angewandte Wissenschaften Mitglied der Fachhochschule Zürich Version 1.4 Inhaltsverzeichnis 1 Zweidimensionale
MehrEinstieg in die Informatik mit Java
1 / 21 Einstieg in die Informatik mit Java Felder, eindimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 21 1 Überblick: Was sind Felder? 2 Vereinbarung von Feldern
MehrProgrammierkurs C++ Variablen und Datentypen
Programmierkurs C++ Variablen und Datentypen Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer #2 Überblick Welche Datentypen gibt es in
MehrZeichen. Datentyp char. char ch = 'x'; Page 1. Zeichen braucht man zur Verarbeitung von Texten, Namen, Bezeichnungen. Zeichencodes
Zeichen Datentyp char char ch = 'x'; Zeichenvariable Zeichenkonstante (unter einfachen Hochkommas) Zeichen braucht man zur Verarbeitung von Texten, Namen, Bezeichnungen. Zeichencodes ASCII (American Standard
MehrC++ Teil 5. Sven Groß. 13. Mai Sven Groß (IGPM, RWTH Aachen) C++ Teil Mai / 18
C++ Teil 5 Sven Groß 13. Mai 2016 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 13. Mai 2016 1 / 18 Themen der letzten Vorlesung Funktionen Funktionsüberladung, Signatur Rekursion const-deklaration Referenzen
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Einführung in die strukturierte Programmierung Teil 5 Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind viele Teile
MehrTag 4 Repetitorium Informatik (Java)
Tag 4 Repetitorium Informatik (Java) Dozent: Patrick Kreutzer Lehrstuhl für Informatik 2 (Programmiersysteme) Friedrich-Alexander-Universität Erlangen-Nürnberg Wintersemester 2016/2017 Willkommen zum Informatik-Repetitorium!
Mehr5.1 Mehr Basistypen. (Wie viele Werte kann man mit n Bit darstellen?)
5.1 Mehr Basistypen Außer int, stellt Java weitere Basistypen zur Verfügung. Zu jedem Basistyp gibt es eine Menge möglicher Werte. Jeder Wert eines Basistyps benötigt die gleiche Menge Platz, um ihn im
MehrDer Datentyp String. Stringvariable und -vergleiche
Informatik 12 mit Java: Gierhardt Zeichenketten bzw. Strings Der Datentyp String Zeichenketten bzw. Strings sind eine häufig benutzte Datenstruktur. Man könnte auch mit Arrays aus Zeichen arbeiten. Da
MehrVorkurs Informatik WiSe 16/17
Java Schleifen und Arrays Dr. Werner Struckmann / Stephan Mielke, Jakob Garbe, 06.10.2016 Technische Universität Braunschweig, IPS Überblick Kommentare Typen Kontrollstrukturen Arrays 06.10.2016 Dr. Werner
MehrKlassen als Datenstrukturen
Einstieg in die Informatik mit Java, Vorlesung vom 27.11.07 Übersicht 1 Klassen als Datenstruktur 2 Vereinbarung von Klassen 3 Erzeugen von Objekten - Instanzen einer Klasse 4 Zugriff auf Attribute 5 Initialisierung
MehrRepetitorium Informatik (Java)
Repetitorium Informatik (Java) Tag 6 Lehrstuhl für Informatik 2 (Programmiersysteme) Übersicht 1 Klassen und Objekte Objektorientierung Begrifflichkeiten Deklaration von Klassen Instanzmethoden/-variablen
MehrInstitut für Programmierung und Reaktive Systeme. Java 2. Markus Reschke
Java 2 Markus Reschke 07.10.2014 Datentypen Was wird gespeichert? Wie wird es gespeichert? Was kann man mit Werten eines Datentyps machen (Operationen, Methoden)? Welche Werte gehören zum Datentyp? Wie
MehrVariablen. int Flugzeug. float. I write code Hund. String. long. Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel
4213 Variablen 17.834 float Flugzeug 36812736294 I write code Hund long String Borchers: Programmierung für Alle (Java), WS 06/07 Kapitel 3 + 4 1 Variablen sind wie Becher. Sie speichern etwas. // Variablen
MehrEinstieg in die Informatik mit Java
1 / 17 Einstieg in die Informatik mit Java String Tokenizer Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 17 1 Überblick Tokenizer 2 StringTokenizer 3 Verwendung von String.split
MehrMethoden und Wrapperklassen
Methoden und Wrapperklassen CoMa-Übung IV TU Berlin 06.11.2012 CoMa-Übung IV (TU Berlin) Methoden und Wrapperklassen 06.11.2012 1 / 24 Themen der Übung 1 Methoden 2 Wrapper-Klassen CoMa-Übung IV (TU Berlin)
MehrAusgabe:
Aufgabe 2.10: Schreiben Sie ein Programm, das zunächst die Quadratzahlen zu den Zahlen 1-10 mit Hilfe einer While- Schleife und danach die Quadratzahlen zu den Zahlen 3, 6, 9,.., 30 mit Hilfe einer For-Schleife
MehrZeiger. C-Kurs 2012, 2. Vorlesung. Tino Kutschbach 10.
Zeiger C-Kurs 2012, 2. Vorlesung Tino Kutschbach tino.kutschbach@campus.tu-berlin.de http://wiki.freitagsrunde.org 10. September 2012 This work is licensed under the Creative Commons Attribution-ShareAlike
MehrÜbung Praktische Informatik I
Übung Praktische Informatik I HWS 2008/2009 Benjamin Guthier Lehrstuhl für Praktische Informatik IV Universität Mannheim guthier@pi4.informatik.uni-mannheim.de 24.10.08 6-1 Heutige große Übung Hinweise
MehrDr. Monika Meiler. Inhalt
Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-4 5.1.3 Kopieren eindimensionaler Felder... 5-6
MehrJAVA 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
MehrEinstieg in die Informatik mit Java
1 / 24 Einstieg in die Informatik mit Java Klassen als Datenstrukturen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 24 1 Klassen als Datenstruktur 2 Vereinbarung von
MehrEinstieg 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
Mehr8. Referenzen und Zeiger
8. Referenzen und Zeiger Motivation Variable werden in C++ an speziellen Positionen im Speicher abgelegt. An jeder Position befindet sich 1 Byte. Sie sind durchnummeriert beginnend bei 0. Diese Positionen
MehrGrundlagen der Programmierung
Grundlagen der Programmierung Einführung in die strukturierte Programmierung Teil 5 Die Inhalte der Vorlesung wurden primär auf Basis der angegebenen Literatur erstellt. Darüber hinaus sind ausgewählte
MehrDr. Monika Meiler. Inhalt
Inhalt 5 Referenzdatentypen - Felder... 5-2 5.1 Eindimensionale Felder - Vektoren... 5-3 5.1.1 Vereinbarung... 5-3 5.1.2 Referenzen sind keine Felder... 5-6 5.1.3 Kopieren eindimensionaler Felder... 5-7
MehrJAVA 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
MehrJava für Anfänger Startup Donnerstag. Programmierkurs Manfred Jackel
Java für Anfänger Startup Donnerstag Programmierkurs 06.-10.10.2008 Manfred Jackel Das haben wir Mittwoch gelernt Felder Reihung von Elementen gleichen Typs int[] a; a ist eine Referenz auf eine (noch
MehrC++ Teil 5. Sven Groß. 8. Mai IGPM, RWTH Aachen. Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 8. Mai / 16
C++ Teil 5 Sven Groß IGPM, RWTH Aachen 8. Mai 2015 Sven Groß (IGPM, RWTH Aachen) C++ Teil 5 8. Mai 2015 1 / 16 Themen der letzten Vorlesung Live Programming zu A2 Gleitkommazahlen Rundungsfehler Auswirkung
MehrProgrammieren I. Arrays Heusch 7.2 Ratz Institut für Angewandte Informatik
Programmieren I Arrays Heusch 7.2 Ratz 5.1 KIT Die Forschungsuniversität in der Helmholtz-Gemeinschaft www.kit.edu Arrays: Definition Arrays (dt. Felder) dienen zum Speichern mehrerer gleichartiger Daten
MehrOrganisatorisches. 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:
MehrOrganisatorisches. 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
MehrObjektorientierte Programmierung. Kapitel 10: Strings
10. Strings 1/16 Objektorientierte Programmierung Kapitel 10: Strings Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2012/13 http://www.informatik.uni-halle.de/ brass/oop12/ 10.
MehrObjektorientierte Programmierung. Kapitel 18: Strings
18. Strings 1/16 Objektorientierte Programmierung Kapitel 18: Strings Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2013/14 http://www.informatik.uni-halle.de/ brass/oop13/ 18.
MehrModellierung und Programmierung 1
Modellierung und Programmierung 1 Prof. Dr. Sonja Prohaska Computational EvoDevo Group Institut für Informatik Universität Leipzig 19. November 2015 Gültigkeitsbereich (Scope) von Variablen { int m; {
MehrArbeitsblä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
MehrString s1, s2; Eine Zuweisung geschieht am einfachsten direkt durch Angabe des Strings eingeschlossen in doppelte Hochkommata:
Informatik mit Java: Gierhardt Zeichenketten bzw. Strings Der Datentyp String Zeichenketten bzw. Strings sind eine häufig benutzte Datenstruktur. Man könnte auch mit Arrays aus Zeichen arbeiten. Da aber
MehrC# - Einführung in die Programmiersprache Arrays, Enumeration und Collections. Leibniz Universität IT Services Anja Aue
C# - Einführung in die Programmiersprache Arrays, Enumeration und Collections Leibniz Universität IT Services Anja Aue Arrays... speichern mehrere Werte vom gleichen Datentyp. fassen zusammenhängende Werte
MehrC# - Einführung in die Programmiersprache Methoden. Leibniz Universität IT Services
C# - Einführung in die Programmiersprache Methoden Leibniz Universität IT Services 02.07.12 Methoden... sind Subroutinen in einer Klasse. können einen Wert an den Aufrufer zurückgeben. verändern die Eigenschaften
MehrObjekttypen. Referenzen, Objekte, Gleichheit, Wrapper, Arrays, mehr-dimensionale Arrays, Bildbearbeitung, krumme Arrays
Objekttypen Referenzen, Objekte, Gleichheit, Wrapper, Arrays, mehr-dimensionale Arrays, Bildbearbeitung, krumme Arrays Primitive- und Objekt-Datentypen Primitive Datentypen benötigen einen vorher genau
MehrThemen der Übung. Methoden und Wrapperklassen. Vorteile von Methoden. Methoden. Grundlagen
Themen der Übung 1 Organisatorisches Methoden und Wrapperklassen 2 Methoden 3 Wrapper-Klassen CoMa-Übung IV TU Berlin 07.11.2012 Organisatorisches: Im Pool nur auf die Abgabeliste setzen, wenn ihr wirklich
Mehr+ C - Array (Vektoren, Felder)
+ C - Array (Vektoren, Felder) Eindimensionale Arrays Beim Programmieren steht man oft vor dem Problem, ähnliche, zusammengehörige Daten (vom gleichen Datentyp) zu speichern. Wenn man zum Beispiel ein
MehrHEUTE. Unterschiede Pseudocode / Programmcode. Rundung und modulo (Tafel) Pseudocode: findprimeswithdifference. Strings in JAVA.
15.11.06 1 HEUTE 15.11.06 3 Unterschiede Pseudocode / Programmcode Rundung und modulo (Tafel) Pseudocode: findprimeswithdifference Strings in JAVA Pseudocode: kontextfrei Variablentyp passend Schleifen
MehrGI Vektoren
Vektoren Problem: Beispiel: viele Variablen vom gleichen Typ abspeichern Text ( = viele char-variablen), Ergebnisse einer Meßreihe ( = viele int-variablen) hierfür: Vektoren ( = Arrays = Feld ) = Ansammlung
MehrJava Einführung Objekt-Datentypen und Strings. Kapitel 8 und 9
Java Einführung Objekt-Datentypen und Strings Kapitel 8 und 9 Inhalt Was sind Objekt-Datentypen Sonderheiten bei Zuweisung und Vergleich Zeichenketten (Strings) Zeichencodes Char, Char-Arrays und Strings
MehrJava 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.
MehrDatenstrukturen / Container in Java
Datenstrukturen / Container in Java Mathematik / Algebraischer Datentyp / Containerklassen Enum-Klassen Arrays (Felder) = elementare Container Algorithmen mit Arrays Prof. Dr. E. Ehses, 2014 1 Mathematik
MehrVorkurs C++ Programmierung
Vorkurs C++ Programmierung Funktionen Rückblick Operatoren logische Verknüpfungen Zusammengesetzte Operatoren ( Zuweisungsoperatoren ) Kontrollstrukturen Bedingte Anweisungen (if-abfrage, switch-konstrukt)
MehrObjektorientierte Programmierung. Kapitel 18: Strings
Stefan Brass: OOP (Java), 18. Strings 1/16 Objektorientierte Programmierung Kapitel 18: Strings Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester 2013/14 http://www.informatik.uni-halle.de/
MehrObjektorientierte Programmierung. Kapitel 22: Aufzählungstypen (Enumeration Types)
Stefan Brass: OOP (Java), 22. Aufzählungstypen 1/20 Objektorientierte Programmierung Kapitel 22: Aufzählungstypen (Enumeration Types) Stefan Brass Martin-Luther-Universität Halle-Wittenberg Wintersemester
MehrComputeranwendung und Programmierung (CuP)
Computeranwendung und Programmierung (CuP) ArrayList 0 1 2 Obj0 Obj1 size() - 1 15.12.2014 CuP - VO 2 Auer 1 ArrayList import java.util.arraylist; ArrayList buchliste; buchliste = new ArrayList();
MehrObjektorientierte Programmierung OOP Programmieren mit Java
4 Datenfelder, Parameterübergabe, Casting Objektorientierte Programmierung OOP Programmieren mit Java 4 Datenfelder, Parameterübergabe, Casting 4 Datenfelder, Parameterübergabe, Casting 4.1 Datenfelder
MehrWo sind wir? Übersicht lexikale Struktur von Java
Wo sind wir? Java-Umgebung Lexikale Konventionen Datentypen Kontrollstrukturen Ausdrücke Klassen, Pakete, Schnittstellen JVM Exceptions Java Klassenbibliotheken Ein-/Ausgabe Collections Threads Applets,
MehrEinstieg in die Informatik mit Java
1 / 26 Einstieg in die Informatik mit Java Felder, mehrdimensional Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 26 1 Überblick: mehrdimensionale Felder 2 Vereinbarung
MehrJavaScript. 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
MehrKapitel 4. Programmierkurs. Datentypen. Arten von Datentypen. Wiederholung Kapitel 4. Birgit Engels, Anna Schulze WS 07/08
Kapitel 4 Programmierkurs Birgit Engels, Anna Schulze Wiederholung Kapitel 4 ZAIK Universität zu Köln WS 07/08 1 / 23 2 Datentypen Arten von Datentypen Bei der Deklaration einer Variablen(=Behälter für
MehrEinstieg in die Informatik mit Java
1 / 47 Einstieg in die Informatik mit Java Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 47 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung,
MehrJava Einführung VARIABLEN und DATENTYPEN Kapitel 2
Java Einführung VARIABLEN und DATENTYPEN Kapitel 2 Inhalt dieser Einheit Variablen (Sinn und Aufgabe) Bezeichner Datentypen, Deklaration und Operationen Typenumwandlung (implizit/explizit) 2 Variablen
MehrJavakurs 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
MehrProgrammierung mit C Zeiger
Programmierung mit C Zeiger Zeiger (Pointer)... ist eine Variable, die die Adresse eines Speicherbereichs enthält. Der Speicherbereich kann... kann den Wert einer Variablen enthalten oder... dynamisch
MehrEinstieg in die Informatik mit Java
1 / 13 Einstieg in die Informatik mit Java Zeichenketten Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 13 1 Zeichenketten 2 Erzeugen von Zeichenketten 3 Operatoren für
MehrII. Grundlagen der Programmierung. Beispiel: Merge Sort. Beispiel: Merge Sort (Forts. ) Beispiel: Merge Sort (Forts. )
Technische Informatik für Ingenieure (TIfI) WS 2006/2007, Vorlesung 9 II. Grundlagen der Programmierung Ekkart Kindler Funktionen und Prozeduren Rekursion Datenstrukturen Merge S ( split, s, merge ) Beispiel:
MehrEinstieg in die Informatik mit Java
Vorlesung vom 6.11.07, Weitere Anweisungen Übersicht 1 Verbundanweisung 2 Bedingte Anweisung 3 Auswahlanweisung 4 for Schleife 5 while Schleife 6 do Schleife 7 break Anweisung 8 continue Anweisung 9 Leere
MehrR-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung.
R-Wörterbuch Ein Anfang... ein Klick auf einen Begriff führt, sofern vorhanden, zu dessen Erklärung. Carsten Szardenings c.sz@wwu.de 7. Mai 2015 A 2 B 3 C 4 D 5 F 6 R 16 S 17 V 18 W 19 Z 20 H 7 I 8 K 9
MehrDie Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache. Dr. Beatrice Amrhein
Die Sprache C# Datentypen, Speicherverwaltung Grundelemente der Sprache Dr. Beatrice Amrhein Überblick Speicherverwaltung: Stack und Heap Ein- und Ausgabe über die Console Variablen und Operatoren Parameter
MehrFelder - Arrays. Typ feldname[] = new Typ[<ganze Zahl >]; Beispiel: double vektor[] = new double[5]; auch eine Initialisierung ist möglich.
Felder Felder - Arrays Variable gleichen Types können in Feldern (array) zusammengefasst werden. Typ[] feldname; oder Typ feldname[]; dabei kann unter Benutzung des new-operators gleich die Dimension zugewiesen
MehrProjekt 3 Variablen und Operatoren
Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.
MehrElementare Datentypen in C++
Elementare Datentypen in C++ bool signed/unsigned char signed/unsigned short int signed/unsigned int signed/unsigned long int (signed/unsigned long long int) float double long double void enum char Der
MehrEinstieg in die Informatik mit Java
Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for
MehrAusdrücke in Scala. Funktionale Programmierung. Christoph Knabe FB VI
Ausdrücke in Scala Funktionale Programmierung Christoph Knabe FB VI 17.10.2014 Inhalt Einfache Ausdrücke Infix-Notation für Methodenaufruf Sonderzeichen in Bezeichnern Schlüsselwörter Konstanten Variablen
MehrPrimitive 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.
MehrVorlesung Programmieren
Vorlesung Programmieren Speicherverwaltung und Parameterübergabe Prof. Dr. Stefan Fischer Institut für Telematik, Universität zu Lübeck http://www.itm.uni-luebeck.de/people/fischer Gültigkeitsbereich von
MehrArrays,Strings&Pointer in C/C++
Arrays,Strings&Pointer in C/C++ Vortrag Mathias Reich Am 21.5.2002 Pointer Da zur Zeit der Compelierung des Programms nicht immer der Umfang der zu bearbeitenden Daten feststeht muss man sich - in manchen
Mehr2. Programmierung in C
2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)
MehrAuD-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
MehrProgrammiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny
Programmiersprache 1 (C++) Prof. Dr. Stefan Enderle NTA Isny 9. Zeiger Arbeitsspeicher / Adressen Der Arbeitsspeicher des Computers (RAM) besteht aus einem Feld von Speicherzellen, beginnend bei Adresse
MehrAlgorithmen implementieren. Implementieren von Algorithmen
Algorithmen implementieren Implementieren von Algorithmen Um Algorithmen ablaufen zu lassen, muss man sie als Programm darstellen (d.h. implementieren) Wie stellt man die algorithmischen Strukturelemente
MehrWie 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 +
MehrAlgorithmen und Programmierung II
Algorithmen und Programmierung II Vererbung Prof. Dr. Margarita Esponda SS 2012 1 Imperative Grundbestandteile Parameterübergabe String-Klasse Array-Klasse Konzepte objektorientierter Programmierung Vererbung
MehrEin String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient.
Strings Ein String ist in Java eigentlich eine Klasse, wir können ihn aber zunächst als Datentyp betrachten, der zur Speicherung von Zeichenketten dient. Beispiel: String zeile = "Cusanus-Gymnasium Wittlich";
Mehr