Java:如何显示我的HashTable库存?

时间:2013-10-23 04:40:44

标签: java hashtable lwjgl slick2d inventory

所以我在这个答案中做了一个清单: Android game rpg inventory system

我的问题是什么是在屏幕上显示gui的最好方法。如果它有助于使用Slick2D添加即时消息。

1 个答案:

答案 0 :(得分:0)

我想这就是你在评论中的意思。

要为Map中的一个键添加“多个”值,基本上只需创建自己的class Something即可存储您想要的所有值,对象等。

这很粗略。虽然我首先会在案例class Something中创建class Item,就像我在评论中所说的那样。

public class Item
{
    public static enum ItemType { FOOD, WEAPON, TOOL, ARMOR; }

    public ItemType type;
    public int weight;

    public Item() {

    }

    public Item(ItemType type, int weight) {
        this.type = type;
        this.weight = weight;
    }
}

然后,当您想要为Map创建和添加项目时,您将执行以下操作。当然Map密钥是Integer,因为它是库存索引,这就是我对您使用的感觉。

HashMap<Integer, Item> inventory = new HashMap<Integer, Item>();

Item i1 = new Item(ItemType.FOOD, 10);
Item i2 = new Item(ItemType.WEAPON, 20);

inventory.put(0, i1);
inventory.put(1, i2);

如果您不想/需要动态广告资源,那么您可以使用Map的数组而不是使用class Item

Item[] inventory = new Item[10];

其中10是清单中项目的最大数量。