Fragen zur Hausuebung 10

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 20. Jan 2008 18:12

Wieso werden die einzelnen Items durch Kommas getrennt und nicht durch Zeilenumbrüche, ..
Probiers mal mit "\n" zwischen den Items.

Benutzeravatar
s!mon
Computerversteher
Computerversteher
Beiträge: 373
Registriert: 20. Okt 2007 18:24
Wohnort: Höchst i. Odw

Re: Fragen zur Hausuebung 10

Beitrag von s!mon » 20. Jan 2008 18:54

Hab ich auch schon.. hab es auch mit \r\n probiert, funktioniert auch nicht. Es scheint eher so zu sein, dass der auf eine völlig andere toString Methode zugreift. Wo dir herkommen soll ist mir aber ein Rätsel. Ich meine, woher kommen denn bitte die [ und ] am Anfang und Ende des Strings.. langsam glaube ich Java und Eclipse hassen mich..

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 20. Jan 2008 21:43

Hmm...ok...also bei gehts. Also wenn du jedes Element einzeln in einen String abspeicherts und dazwischen halt "\n" setzt gehts bei mir zumindest.

MarkusS
Windoof-User
Windoof-User
Beiträge: 29
Registriert: 14. Nov 2007 15:13
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von MarkusS » 23. Jan 2008 22:19

guido hat geschrieben:
Jo(h)nny hat geschrieben:Ja, dann hast Du "Glück gehabt". Oder eben auch nicht, denn es ist deutlich einfacher, vorgegebene Typen nachvollziehen zu können, also selbst auf die korrekten Typen zu kommen. Der Lerneffekt ist also potenziell viel geringer (auch wenn man das selbst vielleicht noch so wahrnimmt).
Ich hatte bis jetzt in jeder Hausübung zwischen 9 und 10 Punkten. Ich habe alle Folien zu den Generics nochmals durchgearbeitet und mir das Tutorial angeschaut. Und trotzdem sitze ich vor der Aufgabe und hab keinen blassen schimmer, was ich da tun soll. Selbst wenn ich ungefähr weiß, was ich einsetzen könnte, weiß ich noch lange nicht warum und weshalb.
Aus meiner Sicht ist diese Hausübung im Vergleich zu den anderen einfach nicht mehr an Studenten gerichtet, die gerade erst seit ein paar wenigen Monaten Java schreiben.

Es haben hier schon einige Leute gefragt was die einzelnen Elemente bei <Type1,Type2,Type3> Collection<T> mergeInventory(Collection<Type1> firstStock, Collection<Type2> secondStock); zu beudeten haben. Entweder hat noch keiner eine Antwort gegeben oder ich war nicht in der Lage es als Antwort zu erkennen.
Konkret vor allem: was bezwecken die drei mit Komma getrennten Typen am Anfang?

Vielleicht kann mich ja noch jemand erleuchten.

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 23. Jan 2008 23:42

Type1, Type2 und Type3 sind reine Platzhalter, d.h. du musst diese Stellen durch geeignete Generics austauschen wie z.B. "T extends StockItem", wobei das Type1 am Anfang das gleiche wie später im Parameter "Collection<Type1> firstStock". Also beide Stellen mit dem gleichen geeigneten Generic austauschen. Mehr kann ich auch nicht posten, weil dass schon die Lösung wäre.

Benutzeravatar
guido
Computerversteher
Computerversteher
Beiträge: 378
Registriert: 30. Nov 2003 21:24
Wohnort: Mühltal
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von guido » 24. Jan 2008 09:23

Stumpf.Alex hat geschrieben:Type1, Type2 und Type3 sind reine Platzhalter, d.h. du musst diese Stellen durch geeignete Generics austauschen wie z.B. "T extends StockItem", wobei das Type1 am Anfang das gleiche wie später im Parameter "Collection<Type1> firstStock". Also beide Stellen mit dem gleichen geeigneten Generic austauschen. Mehr kann ich auch nicht posten, weil dass schon die Lösung wäre.
Genau; überlegt Euch, was für Subtypen die folgenden Einträge haben müssen:
  • Erste Collection<...> von Elementen (1. Parameter)
  • Zweite Collection<...> von Elementen (2. Parameter)
  • Ergebnis-Collection<...> von Elementen (Rückgabetyp)
Diese Typangaben sind dann "Type1", "Type2", "Type3" und entsprechend einzutragen, also etwa (in anderem Beispiel) "<T extends Mensch, U super Student, V extends Dozent>". (Dieses Beispiel ist so natürlich nicht direkt passend!).

Guido

Benutzeravatar
guido
Computerversteher
Computerversteher
Beiträge: 378
Registriert: 30. Nov 2003 21:24
Wohnort: Mühltal
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von guido » 24. Jan 2008 10:03

Auf der GdI 1-Homepage (und ebenso der ICS 1-Homepage) findet sich nun eine Testdatei, mit der ihr gewisse "Plausibilitätschecks" machen könnt. Ich hoffe, das hilft etwas weiter...

Guido

Wambolo
Computerversteher
Computerversteher
Beiträge: 381
Registriert: 18. Okt 2007 11:36

Re: Fragen zur Hausuebung 10

Beitrag von Wambolo » 24. Jan 2008 11:42

So nach langem Hin- und Herüberlegen (und leider auch etwas rumgerate) bin ich jetzt am Ziel, zumindest funktionieren meiner Einschätzung nach die Methoden.

Jetzt habe ich aber noch ein paar Fragen:
1. in merge... müssen doch nicht wirklich beide verschmolzen werden, es reicht hier eine lokale Variable die entsprechend die Inhalte beider Collections aufnimmt.

2. in max dürfen wir selbst bestimmen wie ein Maximum auszusehen hat (Stringlänge, ID oder ähnliches), oder?

3. Was meint die Aufgae mit überschreiben Sie toString();

4. In Compare müssen wir nicht wie im Template von ISToreManager2 die elemente die eine entsprechende bedingung nicht erfüllen nicht aus den vectoren im stock löschen, sondern nur eine collection mit den gefilterten elementen ausgeben?

5. Ich habe in ISToreManager2 nicht den Typ Comparator verwendet, sollten wir Comparator zwingend verwenden?
Interpreter/Parser reported on Nov 12, 2008 8:30:04 PM:
Number too big (102 > 42).

ChRiZz88
Mausschubser
Mausschubser
Beiträge: 87
Registriert: 7. Nov 2007 18:09
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von ChRiZz88 » 24. Jan 2008 11:53

Also ich habe ähnlich wie einer der Vorredner auch den NameClash, beispielsweise beim mergeInventory^^ Hab schon ein Override drüber gemacht, nutzt nix. Wenn ich bei den Parametern statt Collection<a> Collection<a extends StockItem> mache wie vorne beim Rückgabetyp, dann kommt "nur" ein "The method mergeInventory() of type StoreManager must override or implement a supertype method", was in meinen Augen der gleiche Fehler ist.

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 24. Jan 2008 12:22

Wambolo hat geschrieben:So nach langem Hin- und Herüberlegen (und leider auch etwas rumgerate) bin ich jetzt am Ziel, zumindest funktionieren meiner Einschätzung nach die Methoden.

Jetzt habe ich aber noch ein paar Fragen:
1. in merge... müssen doch nicht wirklich beide verschmolzen werden, es reicht hier eine lokale Variable die entsprechend die Inhalte beider Collections aufnimmt.

2. in max dürfen wir selbst bestimmen wie ein Maximum auszusehen hat (Stringlänge, ID oder ähnliches), oder?

3. Was meint die Aufgae mit überschreiben Sie toString();

4. In Compare müssen wir nicht wie im Template von ISToreManager2 die elemente die eine entsprechende bedingung nicht erfüllen nicht aus den vectoren im stock löschen, sondern nur eine collection mit den gefilterten elementen ausgeben?

5. Ich habe in ISToreManager2 nicht den Typ Comparator verwendet, sollten wir Comparator zwingend verwenden?
zu 1: ja

zu 2: ja, nämlich durch das Objekt, dass dieses Comperatorinterface implementiert

zu 3: jede Klasse ist automatisch ein Object und Object besitzt bereits eine toString Methode. Also wenn du in deiner neuen Klasse eine toString Methode schreibst, dann überschreibst du automatisch immer mindestens das toString von Object

zu 4: ja

zu 5: für die Methode max sollen wir das. Aber ich weiß nicht genau was du meinst.

Wambolo
Computerversteher
Computerversteher
Beiträge: 381
Registriert: 18. Okt 2007 11:36

Re: Fragen zur Hausuebung 10

Beitrag von Wambolo » 24. Jan 2008 13:08

danke erstmal, zu 5. damit meinde ich die eclipse-warnung, dass the import java.util.comparator is never used
Interpreter/Parser reported on Nov 12, 2008 8:30:04 PM:
Number too big (102 > 42).

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 24. Jan 2008 13:17

Hmmm, dann haste irgenwo was falsch gemacht, weil du dann anscheinen nirgends Methoden des Interfaces Comperator benutzt.

Wambolo
Computerversteher
Computerversteher
Beiträge: 381
Registriert: 18. Okt 2007 11:36

Re: Fragen zur Hausuebung 10

Beitrag von Wambolo » 24. Jan 2008 14:00

doch, ich habe eine klasse StockItemComparator, die Comparator implementiert, der Hinweis kommt ja in IStoreMangager2, die frage lautet also, ob das comparator zwingend in istoremanager2 genutzt werden muss?
Interpreter/Parser reported on Nov 12, 2008 8:30:04 PM:
Number too big (102 > 42).

Stumpf.Alex
Nerd
Nerd
Beiträge: 643
Registriert: 1. Okt 2007 12:40
Wohnort: Darmstadt
Kontaktdaten:

Re: Fragen zur Hausuebung 10

Beitrag von Stumpf.Alex » 24. Jan 2008 14:16

Also, bei mir meckert Eclipse rum, wenn ich die imports aus dem Interface IStoreManager2 sowie der Klasse StoreManager entferne, denn in beiden wird der Comparator als Typ benutzt.

Onli
Erstie
Erstie
Beiträge: 19
Registriert: 3. Okt 2007 22:16

Re: Fragen zur Hausuebung 10

Beitrag von Onli » 24. Jan 2008 15:25

Ich komme ebenfalls mit der Übung nicht zurecht, das erste Mal übrigens.
Ich versteh nichtmal, was mit Inventories gemeint ist. Die ganze Zeit ist in der Übung bzw in den Kommentaren von "stock" die Rede. Sind diese, also die Vektoren damit gemeint? Oder muss man eine Extraklasse Inventory basteln?
Aus den bisherigen Antworten lese ich heraus, dass es wohl wirklich nur um die Vektoren geht. Das macht ja sogar halbwegs Sinn. Aber solche Begriffsänderungen müssen doch nicht sein...
Sowieso: Wenn ich es ermöglich soll, dass in eine Bücherliste CDs drin vorkommen, halte ich das für sehr komisch. Macht mir außerdem die Unteraufgabe 3 kaputt, wie soll ich dann noch sinnvoll die verschiedenene Typen sortieren? *grml*
Gruß

PS: Was ein Maximum einer Liste soll, egal ob in Abhängigkeit von irgendwas oder nicht, wird mir auch nichtmal ansatzweise klar.
Zuletzt geändert von Onli am 24. Jan 2008 15:30, insgesamt 2-mal geändert.

Antworten

Zurück zu „Archiv“