Hallo zusammen,
Ich habe die Aufgabe einen Taxistand zu implementieren die Aufgabe ist wie folgt:
Die Aufgabe besteht darin, einen Taxistand zu implementieren und zu simulieren.
Es gibt insgesamt 8 Taxis in der Stadt und 1 Taxistand. Der Taxistand funktioniert als FIFO Struktur (Schlange, Queue, s.o.).
Der folgende Code kann für Sie hilfreich sein:
Die Klasse Taxi ist vorgegeben:
Die Klasse Schlange hat die folgenden Instanzvariablen und den folgenden Konstruktor:
Die Klasse App hat folgenden Aufbau:
Die Ausgabe sieht dann in etwa so aus:
Bitte um schnelle Antwort
Hinweise:
Ich habe die Aufgabe einen Taxistand zu implementieren die Aufgabe ist wie folgt:
Die Aufgabe besteht darin, einen Taxistand zu implementieren und zu simulieren.
Es gibt insgesamt 8 Taxis in der Stadt und 1 Taxistand. Der Taxistand funktioniert als FIFO Struktur (Schlange, Queue, s.o.).
Der folgende Code kann für Sie hilfreich sein:
Die Klasse Taxi ist vorgegeben:
Java:
/**
* Ein Taxi ist ein Objekt, das aus dem Fahrernamen, dem Kennzeichen und
* einer eindeutigen Nummer besteht.
*/
public class Taxi {
private String namefahrer;
private String kennzeichen;
private int nummer;
/**
* Der Konstruktor legt ein Taxi Objekt an und speichert darin den
* Fahrernamen, das Kennzeichen und die Taxinummer.
*/
public Taxi(String namefahrer, String kennzeichen, int nummer) {
this.namefahrer = namefahrer;
this.kennzeichen = kennzeichen;
this.nummer = nummer;
}
/**
* Diese Methoden verwenden wir zur Ausgabe der Meldungen in der Klasse
* Schlange.
*/
public String getnamefahrer() {
return namefahrer;
}
public String getkennzeichen() {
return kennzeichen;
}
public int getnummer() {
return nummer;
}
}
Die Klasse Schlange hat die folgenden Instanzvariablen und den folgenden Konstruktor:
Java:
public class Schlange {
private int nextFree;
private Taxi[] arr;
public Schlange(int nextFree) {
this.nextFree = nextFree;
arr = new Taxi[5];
…
}
…
Die Klasse App hat folgenden Aufbau:
Java:
public class App {
public static void main(String args[]) {
Taxi a = new Taxi(…);
Taxi b = new Taxi(…);
…
Schlange taxistand = new Schlange(0); // Nächster freier Platz
// ist im Index 0
System.out.println("Ausgangssituation");
taxistand.clear(); // leert den Taxistand
taxistand.ausgeben(); // zeigt den Taxistand (siehe Ausgabe)
System.out.println("\1. Situation");
taxistand.clear(); // leert den Taxistand
taxistand.enqueue(a);
taxistand.enqueue(b);
taxistand.enqueue(c);
taxistand.enqueue(d);
taxistand.enqueue(e);
taxistand.enqueue(f);
taxistand.ausgeben();
…
Die Ausgabe sieht dann in etwa so aus:
Code:
Ausgangssituation
Alle 5 Plätze sind leer.
Taxistand
frei frei frei frei frei
1. Situation
Alle 5 Plätze sind leer.
Das Taxi: 1, Franz Vector, BN – FV 300 fährt auf Platz 1
Das Taxi: 2, Angela Merkel, B - DE 001 fährt auf Platz 2
Das Taxi: 3, James Bond, BN - JB 007 fährt auf Platz 3
Das Taxi: 4, Manuel Neuer, M - MN 001 fährt auf Platz 4
Das Taxi: 5, Angelique Kerber, BN - AK 111 fährt auf Platz 5
Fehler: Das Taxi: 6, Boris Becker, M - BB 4911 kann nicht einfahren! Der Taxistand ist picke packe voll!
Taxistand
1 2 3 4 5
Bitte um schnelle Antwort
Hinweise:
- Die Schlange des Taxistands und damit das Array enthält Objekte, und zwar Taxis. Wenn ein Platz nicht besetzt ist, verwenden Sie bitte die null-Referenz. Sie könnten also schreiben arr[nextFree] = null; wenn ein Platz frei wird.
- Die Methode public void enqueue(Taxi x) ist ganz leicht zu schreiben. Wenn der Stand nicht voll ist, wird arr[nextFree] = x; gesetzt. Sonst wird eine Meldung ausgegeben (siehe Ausgabe).
- Die Methode public void dequeue() ist etwas aufwändiger. Sie gibt aus, welches Taxi den Stand verlassen hat. Die anderen Taxis, die warten, müssen nachrücken.
- Verwenden Sie bitte javadoc Kommentare für die Klassen und Methoden!
Zuletzt bearbeitet von einem Moderator: