Verkaufsautomat Enumerations HashTable

arti28

Mitglied
Hi Leute,
ich hab da mal ein kleines Problem, an dem ich schon seit einer Weile festhänge.

Folgende Aufgabenstellung:
Mit einem Verkaufsautomaten sollen verschiedene Produkte verkauft werden. Nachdem der Kunde mehrere Produkte ausgewählt hat, berechnet der Automat die Summe der Einzelpreise. Dann kommt es zur Bezahlung. Der Benutzer wirft eine bestimmte Anzahl von Münzen ein. Der Automat entscheidet dann ob genug gezahlt wurde oder nicht.

Der Automat akzeptiert die folgenden Münzen: 1Euro, 2Euro, 50Cent, 20Cent, 10Cent, 1Cent, 2Cent, 5Cent. Intern verfügt der Automat über einen Speicher, für solche Münzen......

A) Schreiben Sie eine Enumeration mit dem Namen Münzart. Jede Konstante dieser Enumeration soll für eine der o.g. Münzen gelten. Jeder Konstanten soll ein Wert in Cent zugewiesen werden. Realisieren Sie dies mit einem geeignetem Objektatribut

B) Schreiben Sie eine Klasse mit dem Namen Münzen. Jede Instanz dieser Klasse Münzen steht für mehrere Münzen, die unterschiedliche Münzenarten haben können. Eine Instanz der Klasse Münzen speichert in einem Objektatribut zu jeder Münzart eine Anzahl. Verwenden Sie dazu die Generic-Klasse HashTable <a,b>.

</a,b>
Erläuterung: Eine Instanz der Klasse Münzen kann dazu verwendet werden, den Bezahlvorgang des Kunden zu beschreiben. Eine solche Instanz kann jedoch auch dazu verwendet werden, den Stand des im Automaten eingebauten Münzspeichers zu beschreiben. eine Solche Instanz kann schließlich auch dazu verwendet werden, die Wechselgeld-Zahlung zu beschreiben.

C) Schreiben Sie zur Klasse Münzen einen Default-Konstruktor, der eine leere Münzenmege erzeugt.

D) Schreiben Sie zur Klasse MÜnzen eine Objektmethode setMünze, mit der man die Anzahl einer der bestimmten Münzart auf einen bestimmten Wert setzen kann. Münzart und Anzahl sollen Parameter der Methode sein.

E) Schreiben Sie zur Klasse MÜnzen eine Objektmethode getMünze mit der man zu einer Münzart deren Anzahl abfragen kann. Die Methode kann einen Parameter vom Typ Münzart und einen Rückgabewert vom Typ Int haben, der die Anzahl der Münzen dieses Typs zurück gibt.

F) Schreiben Sie zur Klasse Münzen eine toString()-Methode, die den Inhalt deines Münzen-Objekts gemäß den nachfolgenden Schema in einen String verwandelt.
2 Euro - 1 Stück
50 Cent - 3 Stück
1 Cent - 5 Stück​


Hier das was ich bis jetzt erreicht habe. Mit der HashTable bin ich überfordert und ich weiß nicht wie das implementiert werden kann und gemeint ist.
Code:
public enum MuenzArt {
    
    EinCent(1),
    ZweiCent(2),
    FuenfCent(5),
    ZehnCent(10),
    ZwanzigCent(20),
    FuenfzigCent(50),
    
    EinEuro(100),
    ZweiEuro(200);
    final int wertInCent;
    
    private MuenzArt (int wertInCent){
        this.wertInCent = wertInCent;
    }
    
    public int _getCent(){
        return wertInCent;
    }
}

Code:
import java.util.Vector;

public class Muenze {
    
    Vector <muenzart> m;
    
    int münzenErhalten = m.size();
    
    public Muenze (){
        m = new Vector <muenzart>();
    }
    
    //Münze einwerfen
    public void muenzeEinwerfen (MuenzArt coin){
        m.add(coin);        
    }
    
    
    //Münzspeicher
    
    
    //Rueckgeld
}
</muenzart></muenzart>
 

Major_Sauce

Bekanntes Mitglied
Nabend,

Die Münzarten schauen schon mal ganz gut aus.
Versuch mal die Java docs zu verwenden. Zur Hashtable steht da in der ersten Zeile:

This class implements a hash table, which maps keys to values. Any non-null object can be used as a key or as a value.
Kannst ja nochmal nachlesen wenn du willst:
Hashtable (Java Platform SE 7 )

Ich weiß ja nicht ob du zum Beispiel eine HashMap kennst, was eine HashTable und auch eine HashMap machen ist folgendes:
Du hast einen "Schlüsselwert" und einen dazu passenden "Wert". Die HashTable speichert einfach nur Paare ab, d.h. wenn du als Key die Münzart EinEuro setzt dann könntest du als Value die Anzahl der Ein-Euro-Münzen setzen die vorliegen.

Ich habe dir mal ein kleines Codebeispiel wie das funktionieren könnte, jedoch verwende ich statt der Münzart einfach einen String für den namen, zum Beispiel "EinEuro". Musst dann nur noch versuchen das für dich passend umzuschreiben.

Java:
	Hashtable<String, Integer> table = new Hashtable<String, Integer>();
	
	table.put("EinEuro", 5);
	System.out.println(table.get("EinEuro"));

mfg Major
 
Zuletzt bearbeitet:
Ähnliche Java Themen
  Titel Forum Antworten Datum
S Enumerations? Java Basics - Anfänger-Themen 5
O HashTable kann ohne Performance-Verlust in Multithreaded-Anwendungen eingesetzt werden. Java Basics - Anfänger-Themen 6
B Hashtable Java Basics - Anfänger-Themen 3
H Klassen Auf eine Hashtable aus mehreren Klassen zugreifen Java Basics - Anfänger-Themen 12
D Hashtable Java Basics - Anfänger-Themen 4
K Hashtable mit eigenen Konstruktor Java Basics - Anfänger-Themen 2
K NullPointerException in der Hashtable Java Basics - Anfänger-Themen 4
T Collections Hashtable gezielt auslesen. Java Basics - Anfänger-Themen 13
B HashTable & Strings übergeben Java Basics - Anfänger-Themen 4
A Input/Output Hashtable Ausgabe Java Basics - Anfänger-Themen 1
P Key anhand von Value finden (Hashtable) Java Basics - Anfänger-Themen 3
S Hashtable Java Basics - Anfänger-Themen 2
T Werte in Hashtable neu zuweisen Java Basics - Anfänger-Themen 3
P 2D Welt, Hashtable Java Basics - Anfänger-Themen 5
D Hashtable/Hashmap Java Basics - Anfänger-Themen 2
D In Hashtable suchen Java Basics - Anfänger-Themen 3
yampi Objektsammlung - Hashtable, Vector, Arrays Java Basics - Anfänger-Themen 8
L Hashtable nicht wirklich geeignet für mein Vorhaben? Java Basics - Anfänger-Themen 3
P | zu einer hashtable hinzufügen Java Basics - Anfänger-Themen 7
D java.lang.outofmemoryerror java heap space bei Hashtable Java Basics - Anfänger-Themen 3
D Hashtable Value(Array) in String und dann Ausgeben Java Basics - Anfänger-Themen 23
S Fortsetzung meiner frage (hashtable) danke vorab an alle Java Basics - Anfänger-Themen 3
S BITTE UM HILFE HASHTABLE/import java.util.Hashtable in Ecplipse Java Basics - Anfänger-Themen 12
A Verschachtelte Hashtable ausgeben. Java Basics - Anfänger-Themen 3
D Eine Liste wie ne HashTable, nur mit auslesbaren Key . . . Java Basics - Anfänger-Themen 31
G Hashtable füllen Java Basics - Anfänger-Themen 2
G Gesamte Hashtable ausgeben Java Basics - Anfänger-Themen 3
L Arbeiten mit Vectoren in einer Hashtable Java Basics - Anfänger-Themen 2
A Unterschied zwischen HashMap und Hashtable Java Basics - Anfänger-Themen 20
G Sortierter Hashtable? Java Basics - Anfänger-Themen 3
D Eine abgeänderte Hashtable erstellen Java Basics - Anfänger-Themen 3
K Probleme mit java.util.hashtable Java Basics - Anfänger-Themen 10
G Hashtable -> Ordnerstruktur Java Basics - Anfänger-Themen 10
M Hashtable gleichzeitigen Zugriff verhindern Java Basics - Anfänger-Themen 11
C Problem mit Hashtable Java Basics - Anfänger-Themen 6
M Hashtable an Datenbank schicken Java Basics - Anfänger-Themen 3
F Hashtable mit String[] als value Java Basics - Anfänger-Themen 2
F invertierung einer Hashtable Java Basics - Anfänger-Themen 4
P HashTable auslesen und in createDocument ausgeben Java Basics - Anfänger-Themen 4
T Warum kann Hashtable get Methode nicht funktionieren? Java Basics - Anfänger-Themen 3
N NullPointerException bei meiner Hashtable Java Basics - Anfänger-Themen 2
M Hashtable oder Hashmap mit Inhalt vorbelegen Java Basics - Anfänger-Themen 2
C Hashtable-get Java Basics - Anfänger-Themen 2
K Hashtable mischen (shuffeln)? Java Basics - Anfänger-Themen 4
H Objekte in einer Hashtable am einfachsten sortieren Java Basics - Anfänger-Themen 13
G Hilfe! Wie Kreise in Hashtable ablegen und wieder auslesen? Java Basics - Anfänger-Themen 2
G unterschied hashtable und hashmap? Java Basics - Anfänger-Themen 3
A Hashtable - 3 Suchmöglichkeiten Java Basics - Anfänger-Themen 4
G hashtable und unsafe, unchecked Code Java Basics - Anfänger-Themen 3
L Hashtable Verständnis Frage Java Basics - Anfänger-Themen 4
R Hashtable ohne Values Java Basics - Anfänger-Themen 5
G Hashtable oder was sonst? Java Basics - Anfänger-Themen 8
S Value von ein Hashtable collectionen Java Basics - Anfänger-Themen 3
S Hashtable & Datei Java Basics - Anfänger-Themen 4
W Hashtable Integer als Value Java Basics - Anfänger-Themen 6
S Hashtable probleme Java Basics - Anfänger-Themen 6
N ein array in der hashtable Java Basics - Anfänger-Themen 6
W Hashtable oder was Anderes Java Basics - Anfänger-Themen 8
I Warum ließt er den Inhalt der Hashtable nicht? Java Basics - Anfänger-Themen 5
G die keys einer Hashtable sortieren Java Basics - Anfänger-Themen 15
D Hashtable gibt eigenartiges wieder Java Basics - Anfänger-Themen 2
G hashtable jeden wert mit trim() bearbeiten Java Basics - Anfänger-Themen 3
K Objekte und deren Anzahl speichern, hashtable? Java Basics - Anfänger-Themen 9
P hashtable Java Basics - Anfänger-Themen 8
V Hashtable ausgeben Java Basics - Anfänger-Themen 4
V Suchen und ausgeben - Hashtable Java Basics - Anfänger-Themen 3
J HashTable Java Basics - Anfänger-Themen 4
G Inhalt einer Hashtable ausgeben Java Basics - Anfänger-Themen 2
A Hashtable als Rückgabewert Java Basics - Anfänger-Themen 3
N maximale Anzahl Schlüssel in einem Hashtable Java Basics - Anfänger-Themen 7
T Hashtable und Vektor Java Basics - Anfänger-Themen 3
R Hashtable wird falsch ausgegeben Java Basics - Anfänger-Themen 5
B Hashtable.containsKey Problem Java Basics - Anfänger-Themen 13

Ähnliche Java Themen

Neue Themen


Oben