Frage von DaniGrf, 47

was ist das für ein ProgrammierFehler?

Hallo. Seid einiger Zeit habe ich angefangen Bukkit zu programmieren. ( Minecraft Plugin). Und ich wollte ein Backpack Plugin ( Rucksack ) schreiben . Ich habe das Inventar in einer HashMap gespeichert Namens "Inventar". Aber wenn ich das Inventar in der HashMap speichern will kommt ein Fehler, und wenn ich es wieder heraus bekommen will kommt ein Fehler . Könnt ihr Mir weiter helfen ?

Antwort
von Atomtoasty, 15

Du hast das Problem, dass '.getContents()' eine Art Liste an Items zurückgibt. Das heißt, dass du entweder

a) die ganze Liste in deiner Hashmap speichern musst, also 'New Hashmap(String, ItemStack())'

b) mit einer for-Schleife alle ItemStacks EINZELN in deine Hashmap packst. Diese Möglichkeit wäre IN JEDEM FALL die sauberste und (meiner Meinung nach) auch die beste! Natürlich müsstest du dann auch '[Hashmapname].get(String)' in eine For-Schleife packen, da es dann ja mehrere Werte wären.

Hoffe ich konnte dir helfen,

LG Atomsi

Antwort
von safur, 16

Ich kenne mich zwar mit MineCraft nicht aus, aber mal ein Versuch :-)

Wer ist denn ItemStack?
Screenshot 1)
Du übergibst String und was noch? Was gibt getContents zurück? Eine Zahl etwa?

Die Methode get existiert nicht. Welchen Objekt soll die denn zugeordnet sein?

Screenshot 2)
Hier ist es wohl das gleiche. Was gibst du PUT denn mit? Er sag
t dir er erwartet andere Datentypen.

Screenshot 3)
Die Methode get existiert nicht. Welchen Objekt soll die denn zugeordnet sein?

Kommentar von safur ,

Du kannst auch mal hier gucken. Man versieht eine Hashmap
meist mit einem Index und einem String
http://beginnersbook.com/2013/12/hashmap-in-java-with-example/

Kommentar von DaniGrf ,

ahh ok habs gefixt .. danke schön :D

Keine passende Antwort gefunden?

Fragen Sie die Community