• Keine Ergebnisse gefunden

U05 Java-Collection-Framework Inhalt der Übung 

N/A
N/A
Protected

Academic year: 2021

Aktie "U05 Java-Collection-Framework Inhalt der Übung "

Copied!
2
0
0

Wird geladen.... (Jetzt Volltext ansehen)

Volltext

(1)

Dr. Birgit Demuth, Lehrstuhl Softwaretechnologie, LV Softwaretechnologie, SS 2011

Seite 1 von 2

U05 Java-Collection-Framework

Inhalt der Übung

 Java-Datenstrukturen (Java-2-Collection-Framework, ohne Generics)

 Beachten Sie, dass Sie als "Nachschlagewerk" für Framework-Klassen (so wie auch für alle anderen Klassen der Java 2-Klassenbibliothek) am besten die API-

Dokumentation mit javadoc verwenden. So finden Sie unter den folgenden URLs die Dokumentation der in dieser Übung benötigten Klassen (Java 1.2-Datenstrukturen, noch ohne Generics).

http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collection.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/List.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/ArrayList.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/LinkedList.html http://java.sun.com/j2se/1.4.2/docs/api/java/lang/Comparable.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/Collections.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/Set.html

http://java.sun.com/j2se/1.4.2/docs/api/java/util/HashSet.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/TreeSet.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/Map.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/HashMap.html http://java.sun.com/j2se/1.4.2/docs/api/java/util/TreeMap.html Übungsaufgaben

Aufgabe 1 (List-Interface)

Gegeben ist ein Entwurfsmodell für die Bibliothek.

Implementieren Sie das Modell unter Beachtung folgender Randbedingungen und testen Sie die Bibliothek mit dem Praktomaten (Collections I):

Nutzen Sie das Interface List!

Implementieren Sie Listen entweder mit ArrayList oder LinkedList. Halten Sie die Änderungen beim Wechsel einer Datenstruktur möglichst gering.

Diskutieren Sie, nach welchem Sortierkriterium der Buchbestand sortiert werden sollte!

Implementieren Sie die Methode sucheNachISBN() durch ein binäres Suchverfahren.

Überlegen Sie sich die notwendigen (Hilfs-)Methoden der Klasse Buch!

Ergänzen Sie das UML-Klassendiagramm um Ihre getroffenen Entwurfsentscheidungen!

Überlegen Sie sich die Vorteile dieser Implementation gegenüber einer Variante basierend auf Arrays!

(2)

Dr. Birgit Demuth, Lehrstuhl Softwaretechnologie, LV Softwaretechnologie, SS 2011

Seite 2 von 2

Aufgabe 2 (Set- und Map-Interface)

Reimplementieren Sie die Bibliothek wie folgt und testen Sie die Bibliothek mit dem Praktomaten (Collections II):

Nutzen Sie zur Realisierung der Aggregation zwischen Bibliothek und Buch eine Menge, d.h. eine geeigneten Set-Implementierung.

Nutzen Sie Iteratoren für den Zugriff auf die Elemente einer Menge!

Erweitern Sie die Klasse Bibliothek um die Methode Map

bestandNachAutorAuflisten() Die Methode soll die Autoren auflisten, zusammen mit der Liste der von ihnen verfügbaren Bücher. Verwenden Sie das Interface Map zur Implementierung dieser Methode!

Diskutieren Sie die Vor- und Nachteile der verwendeten Datenstrukturen (Listen vs.

Mengen)!

Referenzen

ÄHNLICHE DOKUMENTE

[r]

Wolfgang Hönig WS 09/10. Übung Algorithmen

Geben Sie eine BNF-Definition B an, die folgende Sprache beschreibt (siehe auch Zusatzaufgaben der 33. Ist die Grammatik (bzw. BNF-Definition)

 Überlegen Sie sich sinnvolle Testfalldaten für die Methode steuer() der Klasse Einwohner und notieren Sie diese in einer Testfalltabelle!.  Schreiben Sie

Reimplementieren Sie die Bibliothek aus Aufgabe 2 der Übung U05 unter Nutzung der Möglichkeiten von Java 5 bzw..

public interface Collection { // Anfragen (Queries) public boolean isEmpty();. public boolean contains

Einfügen eines Werts für einen Schlüssel Entfernen eines Schlüssel/Wert-Paars Abfrage eines Werts für einen Schlüssel. "ist enthalten"-Abfrage für Schlüssel

Falls Ja, so soll das Bild geholt und lokal unter dem Namen im zweitern Parameter gespeichert werden.. Verwenden Sie dazu die Methoden read und write aus der Klasse ImageIO