JAVA Programm mit BlueJ < Sonstige < Schule < Informatik < Vorhilfe
|
Hallo liebe Forengemeinde! Ich bin gerade dabei ein Java Programm zu schreiben, welches den Bestand von Goldartikeln verwalten soll. Hierbei soll jeder Goldartikel vom Typ 333, 555 oder 777 sein. Ich habe eine Klasse Verwaltung (für die Ausführung des Programms verantwortlich), eine Klasse Goldartikel und eine Klasse vom Typ enum mit dem Namen Goldtyp. Meine Frage ist nun: Wie bekomme ich es hin, dass zu jedem Eintrag g1, g2, g3 und g4 der ArrayListe der entsprechende Goldtyp (AAA ist 333, BBB ist 555 und CCC ist 777) angezeigt wird? Ich hoffe, Ihr könnt mir weiterhelfen.
Das ist ein Auszug aus der KLasse Verwaltung mit der ArrayListe und Demodaten:
-----------------------------------------------------------------------------
public void initData()
{
Goldartikel g1 = new Goldartikel(10, 1, 50, Goldtyp.AAA);
Goldartikel g2 = new Goldartikel(12, 1, 60, Goldtyp.BBB);
Goldartikel g3 = new Goldartikel(9, 1, 100, Goldtyp.AAA);
Goldartikel g4 = new Goldartikel(4, 1, 300, Goldtyp.BBB);
bestandListe.add(g1);
bestandListe.add(g2);
bestandListe.add(g3);
bestandListe.add(g4);
}
Hier wird der Bestand in einer Tabelle angezeit:
-----------------------------------------------
private void getGoldartikelBestand()
{
String s;
System.out.println("GOLDARTIKELBESTAND [ARTIKELART 1]");
System.out.println("*********************************");
System.out.println("");
System.out.println("");
printZentriert("GEWICHT");
printZentriert("ART. NR.");
printZentriert("ARTIKELART NR.");
printZentriert("PREIS");
printZentriert("GOLDTYP");
System.out.println();
printLinieLF(5);
Iterator <Bestand>iter = bestandListe.iterator();
while(iter.hasNext())
{
Bestand i = iter.next();
if (i instanceof Goldartikel)
{
s = castDouble2String(i.getGewicht());
printRechtsbuendig(s);
s = castInt2String(i.getArtikelnummer());
printRechtsbuendig(s);
s = castInt2String(i.getArtikelart());
printRechtsbuendig(s);
s = castDouble2String(i.getPreis());
printRechtsbuendig(s);
------------------------------------------------
for(Goldtyp goldtyp: Goldtyp.values())
{
printRechtsbuendig(goldtyp.getGoldtyp()); <-Diese Anweisung ist das Beste was
} ich habe. Doch die zeigt mir
------------------------------------------------
System.out.println(); zu jedem Artikel alle Goldtypen
} an. Und ich möchte ja, dass bspw.
} bei g1 333 steht, beu g2 555 usw.
System.out.println();
}
Hier ist die enum Klasse:
------------------------
public enum Goldtyp
{
AAA("333"),
BBB("555"),
CCC("777");
private final String goldtyp;
/**
* Im Folgenden sind die Instanzvariabeln definiert.
* Bei Klassen vom Typ Enum werden diese erst hiner der Aufzählung der
* gültigen Typen aufgeführt.
*/
Goldtyp(String goldtyp)
{
this.goldtyp = goldtyp;
}
public String getGoldtyp()
{
return this.goldtyp;
}
}
Ich bin schon am verzweifeln......
|
|
|
|
Status: |
(Antwort) fertig | Datum: | 21:14 Mi 19.01.2011 | Autor: | felixf |
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Eingabefehler: "{" und "}" müssen immer paarweise auftreten, es wurde aber ein Teil ohne Entsprechung gefunden (siehe rote Markierung)
Moin,
> s = castDouble2String(i.getPreis());
> printRechtsbuendig(s);
>
> ------------------------------------------------
> for(Goldtyp goldtyp: Goldtyp.values())
> {
>
> printRechtsbuendig(goldtyp.getGoldtyp()); <-Diese Anweisung
> ist das Beste was
> }
> ich habe. Doch die zeigt mir
>
> ------------------------------------------------
> System.out.println(); zu jedem
> Artikel alle Goldtypen
> }
> an. Und ich möchte ja, dass bspw.
> }
> bei g1 333 steht, beu g2 555 usw.
Nun, wenn du eine Schleife programmierst die alle Goldtypen auflistet, und die bei jedem Artikel durchlaufen laesst, ist es auch kein Wunder dass du diese Ausgabe bekommst.
Lass dir von deinem Goldartikel-Objekt den Goldtyp zurueckgeben und rufe davon getGoldtyp() auf, und gib das mit printRechtsbuendig(). Ohne diese for-Schleife.
LG Felix
|
|
|
|
|
Status: |
(Mitteilung) Reaktion unnötig | Datum: | 21:23 Do 03.02.2011 | Autor: | matux |
$MATUXTEXT(ueberfaellige_frage)
|
|
|
|