JAVA1 H 22. COLLECTIONS FRAMEWORK. 1. INLEIDING. Collections framework Is een verzameling van data structuren, interfaces en algoritmen Meest voorkomende.

Slides:



Advertisements
Verwante presentaties
Zelf objecten maken in VBA Ynte Jan Kuindersma, BIRD Automation Nationale Officedag 2009 EDE, 14 Oktober 2009.
Advertisements

Algoritmen en Datastructuren
JAVA1 H 16. MULTITHREADING. 1. INLEIDING. Threads: delen van het programma die in concurrentie met elkaar gelijktijdig in executie gaan. Thread is een.
Programmeren in Java met BlueJ
Van domeinklasse tot implementatie
MagentaPurpleTeal PinkOrangeBlue LimeBrown RedGreen Introductie C# /.NET
automatische garbage collection klein object georiënteerd betrouwbaar
JAVA1 H 1. KENNISMAKING MET JAVA EN DE ONTWIKKELOMGEVINGEN 1. ONTSTAANSGESCHIEDENIS VAN JAVA Java: ontworpen in 1990 door Sun Microsystems voor de programmering.
Het ontwerpen van een klasse
Klasse Stringbuffer Wanneer een String object gecreëerd wordt, kan de inhoud ervan nooit meer veranderen Stringbuffer wordt gebruikt voor zogenaamde.
Het type int Tekenen met Java operatoren
OOS Object geOrienteerd Software-ontwerp - 4 Codeerperikelen Singleton Specificeren Scheiding GUI en Domein Facade.
Omgevingen zijn dan geïmplementeerd als Symbol Tables. Symbol Table mapt een symbool met een Binding Meerdere noties van binding –Meerdere manieren te.
Computervaardigheden en Programmatie Universiteit AntwerpenObjecten 4.1 Computervaardigheden en Programmatie 1rste BAC Toegepaste Biologische Wetenschappen.
Modula vs Java MODULE Show; CONST PI = ; TYPE PointRc = RECORD x,y : INTEGER; speed : REAL; angle : REAL; END; VAR a,b : PointRc; BEGIN.
Hoofdstuk 6: Controle structuren
Server side scripting 1 Webtechnologie Lennart Herlaar.
Algoritmiek Arrays: wat zijn dat en wat kun je ermee? Loops: hoe hou je ze in bedwang? Hoorcollege 6 - Ma. 9 okt L.M. Bosveld-de Smet.
Inleidend probleem Data structuur (hiërarchie van classes)
Algoritmen en Datastructuren (ALDAT) EVMINX4 Week 6.
GESPRG Les 8 Gestructureerd programmeren in C. 101 Array Meerdere variabelen van hetzelfde type kun je samennemen in één array variabele. Stel in een.
Opgave 1a: afronden int n=5; double a, b, c, d; a = n * 1.5; b = n * 3 / 2; c = n / 2 * 3; d = 3 / 2 * n; a b c d
Array nDeclaratie nCreatie nOpvragen nWijzigen nLengte String [ ] a; a = new String[10]; ……a[5]…… a[5] = ……; …a.Length… …is eigenlijk overbodig! List a;
Hoorcollege 8 Game object structuren. Arrays in games Grid-gebaseerd speelveld (zoals Tetris) Lijst van spelers Lijst van inventory items Lijst van alle.
Hoorcollege 7 Collections, arrays. Programma ‘Snowflakes’ Sneeuwvlok object.
JAVA -- H81 Exception: ongewone of foutieve situatie->prog. mislukt kan onderschept en afgehandeld worden. = een object van de klasse Throwable, gegenereerd.
Hoofdstuk 2 : Inleiding tot Java Applicaties
JAVA -- H51 CONSTRUCTOR –- COPY-CONSTRUCTOR 1Constructor: Dezelfde naam als de klasse Wordt uitgevoerd d.m.v. new Initialisatie van de (private) attributen.
Hibernate Object relational mapping
Algoritmiek Object-georiënteerd Programmeren
Algoritmiek Strings & Stringmanipulaties; Controle Structuren; Floating-point notation. Hoorcollege 4 - Ma. 25 sept L.M. Bosveld-de Smet.
Algoritmiek Java GUIs, AWT en Swing API Overzicht te bestuderen stof, voorbeeldtentamen Hoorcollege 15 - Ma. 11 dec L.M. Bosveld-de Smet.
H21. en H22. COLLECTIONS FRAMEWORK. 1. INLEIDING.
JAVA UTILITIES PACKAGE EN BIT-MANIPULATIE
Hoofdstuk 5 – Object Based Programmeren
1 Hoofdstuk 11: Strings en karakters Inleiding In dit hoofdstuk bespreken we de mogelijkheden van de klassen : String StringBuffer Character StringTokenizer.
HOOFDSTUK 7 ARRAYS 7.1.     INLEIDING Array
JAVA1 H 9. OBJECTGEORIENTEERD PROGRAMMEREN: OVERERVING 1. INLEIDING Wat is overerving (inheritance)? Overerving is een mechanisme waarbij software opnieuw.
DU2PRES1 : C vervolg Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 Beginselen van C opgaves… volgende week: ARM.
Hoofdstuk 9 Objecten en klassen.
Hoorcollege 9 Jewel Jam The revenge. Hierarchie van game objecten Game object (lijst) Game object (grid) Game object (lijst) Game object.
Arrays.
Internetapplicaties - IV Collecties 1 Internetapplicaties Deel 4: Java hulpklassen: Collecties.
Herhaling Java-programmatie en geautomatiseerd testen (vervolg)
Deel XIV Eerste echte e-commerce applicatie Implementatie (vervolg) 1 Internetapplicaties Deel 15: Herhaling Java-programmatie en geautomatiseerd testen.
Inleiding Informatica Prof. Dr. O. De Troyer Hoofdstuk 3: Werken met numerieke gegevens.
Hoofdstuk 10.1 Toepassing: Bitmap-editor. nKlik punten op scherm nPlaatje verschuiven left, right, up, down nPlaatje bewerken clear, invert, bold, outline.
Hoofdstuk 5 Interactie. Controls Form Label Button Label TextBox.
Hoorcollege 5 Herhaling, game object interactie. Ball class class Ball { Texture2D colorRed, colorGreen, colorBlue; Texture2D currentColor; Vector2 position,
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 7 onze.
C++ C++ als een verbetering van C Abstracte datatypen met classes Constructoren en destructoren Subklassen binding van functies 1.
The beast has been released! 4 arcade-style games Interviews with famous people in the game industry Develop browsers games for any device (phone, tablet,
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 2 definitie.
Algoritmiek Class Hierarchies, Inheritance. Hoorcollege 12 - Ma. 20 nov L.M. Bosveld-de Smet.
Inleiding tot programmeren
Variabelen Part deux.. Variabelen week 3 0. Herhaling 1. De NullPointerException (p101) 2. Primitieven 3. Scope en levensduur van variabelen 4. Meerdere.
Constructoren Genesis 1:1 Aarde a1 = new Aarde(“Adam”, “Eva”);
Datacommunicatie en netwerken
Computertechniek Hogeschool van Utrecht / Institute for Computer, Communication and Media Technology 1 C programmeren voor niet-C programmeurs les 3 redirection,
JAVA: een platformonafhankelijke taal
Java C++ nVeilig nMachine- onafhankelijk nVeel libraries, ook voor Internet-I/O Snel Native executables Libraries optimaal voor specifiek OS.
Objectgeoriënteerd Programmeren (2)
Gameprogrammeren: Lists en interfaces
Hoofdstuk 9.2 Strings.
OOS Object geOrienteerd Software-ontwerp - 5
Arjan Egges & Paul Bergervoet
Voortborduren op eerder gedaan werk
H 22. COLLECTIONS FRAMEWORK. 1. INLEIDING.
Gameprogrammeren: Arrays
Transcript van de presentatie:

JAVA1 H 22. COLLECTIONS FRAMEWORK. 1. INLEIDING. Collections framework Is een verzameling van data structuren, interfaces en algoritmen Meest voorkomende datastructuren gestandaardiseerd en efficient geïmplementeerd. Voorbeeld van herbruikbare code

JAVA2 2. OVERZICHT COLLECTIONS FRAMEWORK Collection Is een data structuur (object) die referenties naar andere objecten bijhoudt. Collections framework Interfaces die de bewerkingen declareren voor verschillende collection types en verschillende implementaties (classes) daarvan. Behoren tot het package java.util Collection Set List Map

JAVA3 3. CLASS ARRAYS Class Arrays Voorziet static methoden voor manipulatie van arrays Voorziet “high-level” methoden Methode binarySearch voor het zoeken in geordende arrays Methode equals voor het vergelijken van arrays Method fill voor waarden in te brengen in ee, array Method sort voor sorteren

JAVA4 3. CLASS ARRAYS : Voorbeeld methoden. import java.util.*; public class UsingArrays { private int intValues[] = { 1, 2, 3, 4, 5, 6 }; private double doubleValues[] = { 8.4, 9.3, 0.2, 7.9, 3.4 }; private int filledInt[], intValuesCopy[]; public UsingArrays() // initialize arrays { filledInt = new int[ 10 ]; intValuesCopy = new int[ intValues.length ]; // vul filledInt volledig op met 7’s Arrays.fill( filledInt, 7 ); // sorteer doubleValues in oplopende volgorde Arrays.sort( doubleValues ); // copy array intValues naar array intValuesCopy System.arraycopy( intValues, 0, intValuesCopy, 0, intValues.length ); }

JAVA5 3. Methode arraycopy // copy array intValues naar array intValuesCopy System.arraycopy( intValues, 0, intValuesCopy, 0, intValues.length ); static void arraycopy(Object src, int srcPos, Object dest, int destPos, int length)arraycopyObject Parameters: src - de source array. srcPos - start positie in de source array. dest - de destination array. destPos - start positie in de destination array. length – aantal elementen die gekopieerd moeten worden. Werpt: IndexOutOfBoundsExceptionIndexOutOfBoundsException – indien de grenzen van src of dest overschreden worden. ArrayStoreExceptionArrayStoreException – indien het type van de array src niet in dest geplaatst kan worden. NullPointerExceptionNullPointerException – indien src of dest null is.

JAVA6 public void doiets() { //vergelijk de inhoud van beide arrays boolean b = Arrays.equals( intValues, intValuesCopy ); //... // element opzoeken int location= Arrays.binarySearch( intValues, value ); //indien value = 5 returns 4 //indien value = 8763 returns –7 // -7 = de indexwaarde_in_geval_van_invoegen*(-1) -1 //... } //... } 3. CLASS ARRAYS : Voorbeeld methoden.

JAVA7 3. CLASS ARRAYS : overloaded methoden static int binarySearch(int[] a, int key)binarySearch static int binarySearch(double[] a, double key)binarySearch Idem voor char, byte, short, long en float static int binarySearch(Object[] a, Object key)binarySearchObject static int binarySearch(Object[] a, Object key, Comparator c)  zie paragraaf 6.binarySearchObject Comparator static boolean equals(int[] a, int[] a2)equals Idem voor char, byte, short, long, float en double static boolean equals(Object[] a, Object[] a2)equalsObject

JAVA8 3. CLASS ARRAYS : overloaded methoden static void fill(int[] a, int val)fill static void fill(int[] a, int fromIndex, int toIndex, int val)fill IllegalArgumentException – IllegalArgumentException if fromIndex > toIndex ArrayIndexOutOfBoundsException – ArrayIndexOutOfBoundsException if fromIndex a.length Idem voor char, byte, short, long, float, double en object

JAVA9 3. CLASS ARRAYS : overloaded methoden static void sort(int[] a)sort static void sort(int[] a, int fromIndex, int toIndex)sort IllegalArgumentException – if fromIndex > toIndex IllegalArgumentException ArrayIndexOutOfBoundsException – ArrayIndexOutOfBoundsException if fromIndex a.length Idem voor char, byte, short, long, float en double static void sort(Object[] a)sortObject static void sort(Object[] a, Comparator c)sortObjectComparator static void sort(Object[] a, int fromIndex, int toIndex)sortObject static void sort(Object[] a, int fromIndex, int toIndex, Comparator c)  zie paragraaf 6.sortObjectComparator

JAVA10 3. CLASS ARRAYS : static methode asList static methode asList laat toe een Arrays object als een List (zie verder) te doorlopen. Wijzigen op de elementen via de List view zijn effectief in het Arrays object, en vise versa. Opm: de List heeft een vaste lengte (geen add of remove!). Voorbeeld: import java.util.*; public class UsingAsList { private static final String values[] = { "red", "white", "blue" }; private List list; // initialiseer List en wijzig (set methode) de waarde // op locatie 1 public UsingAsList() { list = Arrays.asList( values ); // get List list.set( 1, "green" ); // wijzig een waarde }

JAVA11 3. CLASS ARRAYS : static methode asList // output via List en via array public void printElements() { System.out.print( "List elements : " ); for ( int count = 0; count < list.size(); count++ ) System.out.print( list.get( count ) + " " ); System.out.print( "\nArray elements: " ); for ( int count = 0; count < values.length; count++ ) System.out.print( values[ count ] + " " ); System.out.println(); } public static void main( String args[] ) { new UsingAsList().printElements(); } List elements : red green blue Array elements: red green blue

JAVA12 4. INTERFACE COLLECTION EN CLASS COLLECTIONS. Interface Collection Bevat bulk operations (op de volledige collection) Adding, clearing, comparing en retaining objects in de collection Interfaces Set en List extend interface Collection Voorziet een Iterator, die ook elementen kan verwijderen. Class Collections Voorziet static methoden die collections manipuleren Polymorfisme wordt hierbij ondersteund

JAVA13 5. LIST INTERFACE. Interface Collection Interface List Vector, ArrayList en LinkedList zijn implementatie klassen van interface List.