Übungen
Die folgenden Aufgaben sollen mit der Abiturklasse List bearbeitet werden.
Aufgabe 1
Beantworte die folgenden Verständnisfragen (ohne Programmierung).
- In einer Liste wurden bereits drei Elemente eingefügt. Wenn man das zweite Element in der Liste löschen möchte, welche Methoden (der Klasse List) ruft man dazu nacheinander auf?
- Eine Liste hat drei Elemente. Wenn man zwischen dem ersten und zweiten Element der Liste ein weiteres Element einfügen möchte, welche Methoden ruft man dazu nacheinander auf?
- In welchen Fällen liefert hasAccess() den Wert false? In welchen Fällen den Wert true? Liste alle denkbaren Fälle auf.
- Warum kann man mit insert() kein Element am Ende der Liste einfügen? Wie kann man trotzdem ein Objekt ans Ende der Liste hängen?
Aufgabe 2
Das folgende Beispielprogramm erzeugt eine Liste und fügt einige Elemente ein. Zeichne je ein Objektdiagramm der Situation 1., 2. und 3. Nutze dazu diese Vorlage. Speichere dir nach jeder Situation ein Bild (Download (PNG)).
public class Beispiel {
public void ausfuehren() {
List<String>farbenListe = new List<>();
// 1. Diagramm
farbenListe.append("Rot");
farbenListe.append("Blau");
farbenListe.append("Gelb");
// 2. Diagramm
farbenListe.toFirst();
farbenListe.next();
farbenListe.remove();
farbenListe.next();
farbenListe.insert("Grün");
farbenListe.append("Orange");
// 3. Diagramm
}
}
Aufgabe 3
Lade dir das BlueJ Projekt herunter und bearbeite die nachfolgenden Aufgaben. Wahlweise kannst du die Aufgaben auch in der online IDE bearbeiten
⏬BlueJ Projekt- Deklariere und erzeuge eine Referenz für ein Objekt der Klasse List, welche Strings enthalten soll. Das Objekt soll im Konstruktor erzeugt werden.
- Implementiere die Methode fuelle(). Sie fügt die Strings "Rot", "Blau", "Gelb" und "Grün" (in dieser Reihenfolge) in die Liste ein.
- Implementiere die Methode vertauschen1(). Die Methode soll das zweite und das vierte Element der Liste vertauschen, ohne die Methode setContent zu benutzten - getContent() ist jedoch erlaubt und erfolderlich. Falls die Liste nicht genügend Elemente hat, soll die Methode nichts tun.
- Implementiere die Methode vertauschen2(int pos1, int pos2). Die Methode vertauscht die Elemente der Liste an den Stellen pos1 und pos2. Beispiel: pos1 = 0 und pos2 = 2 vertauscht das erste und das dritte Element der Liste. Falls die Liste nicht genügend Elemente hat, geschieht nichts. Für diese Aufgabe darfst du die Methode setContent() benutzen, aber vielleicht schaffst du es auch ohne ;).
Online IDE