FB18 - Das Forum für Informatik

fb18.de / Diplom Informatik / Unterbereich Grundstudium / Praktische Informatik

Aufgabenblatt Z Aufgabe 1.2

Aufgabenblatt Z Aufgabe 1.2 2003-07-15 00:03
takahara
Nabend, ich stehe gerade aufem Schlauch (es ist zu spät zum Programmieren) und muß die Aufgabe morgen nachreichen.

Kann mir mal jemand einen Tipp geben, wie ich die Methode

public Uhrzeit [] gibAnfagszeiten(Kinosaal saal)

implementiere. Ich habe keine AHnung, wo ich die Anfangszeit herbekomme. Habe bisher ein Array Kinosäle und eine ArrayList Vorstellungen.

Danke

takahara

Re: Aufgabenblatt Z Aufgabe 1.2 2003-07-15 00:09
Farcon
public Uhrzeit[] gibAnfangszeiten(Kinosaal kino) { assert saele.contains(kino) : "Dieses Kino gibt es nicht im Plan!"; ArrayList zeiten = new ArrayList(); // Alle Vorstellungen durchlaufen, und die Anfangszeiten des Kinos // im ArrayList zeiten sammeln for (int i = 0; i < vorstellungen.size(); i++) { Vorstellung v = (Vorstellung)vorstellungen.get(i); if (kino.equals(v.gibKinosaal())) { zeiten.add(v.gibAnfangszeit()); } }
Dann sind die Anfangszeiten aber noch nicht sortiert.

Re: Aufgabenblatt Z Aufgabe 1.2 2003-07-15 00:57
asdf
public Uhrzeit[] gibAnfangszeiten(Kinosaal kino) { assert saele.contains(kino) : "Dieses Kino gibt es nicht im Plan!"; ArrayList zeiten = new ArrayList(); // Alle Vorstellungen durchlaufen, und die Anfangszeiten des Kinos // im ArrayList zeiten sammeln for (int i = 0; i < vorstellungen.size(); i++) { Vorstellung v = (Vorstellung)vorstellungen.get(i); if (kino.equals(v.gibKinosaal())) { zeiten.add(v.gibAnfangszeit()); } }
Dann sind die Anfangszeiten aber noch nicht sortiert.

Und was 'return't deine Methode ? [img]http://www.fb18.de/gfx/12.gif[/img]
Ich habe das in der Übung auch diesen Ansatz genommen, doch
es funktionierte nicht.

Re: Aufgabenblatt Z Aufgabe 1.2 2003-07-15 01:03
Farcon
Ups, da hab ich noch was vergessen:

public Uhrzeit[] gibAnfangszeiten(Kinosaal kino) { assert saele.contains(kino) : "Dieses Kino gibt es nicht im Plan!"; ArrayList zeiten = new ArrayList(); // Alle Vorstellungen durchlaufen, und die Anfangszeiten des Kinos // im ArrayList zeiten sammeln for (int i = 0; i < vorstellungen.size(); i++) { Vorstellung v = (Vorstellung)vorstellungen.get(i); if (kino.equals(v.gibKinosaal())) { zeiten.add(v.gibAnfangszeit()); } } // Die Anfangszeiten aus dem Hash zeiten in einen Array wandeln Uhrzeit[] starttimes = new Uhrzeit[zeiten.size()]; for(int i = 0;i < zeiten.size();i++){ starttimes[ i ] = (Uhrzeit)zeiten.get(i); } return starttimes; } }
Das umwandeln ist nicht elegant, da gibt es auch eigentlich eine Methode für, aber die hab ich nicht hinbekommen.

Re: Aufgabenblatt Z Aufgabe 1.2 2003-07-15 09:43
tekai

// Die Anfangszeiten aus dem Hash zeiten in einen Array wandeln
Uhrzeit[] starttimes = new Uhrzeit[zeiten.size()];
zeiten.toArray(starttimes);
Arrays.sort(starttimes);

Was Vorstellung und sitzplan angeht, den kann doch die jeweilige Vorstellung selber verwalten.