Hashmap不返回所有值

时间:2018-03-19 21:50:35

标签: java

我正在学习如何使用哈希图,我在这里遇到了一些问题。我创建了两个名为Zoo和Animals的类,我使用Hashmap加入了两个类:

private HashMap<Zoo, Animals> zoo;

我构建了一个将数据添加到hashmap中的方法:

public void setAnimal(Zoo zoo, Animals animal ){
    zoo.put(zoo, animal);
}

我已将以下值插入到hashmap中:

   Main main = new Main();

   Zoo zoo1 = new Zoo("France", 1);
   Zoo zoo2 = new Zoo("Spain", 2);

   Animals gorilla = new Animals(2015, "Gorilla");
   Animals frog = new Animals(2018, "Frog");

   Animals zebra = new Sedan(2016, "zebra");
   Animals lion= new Sedan(2016, "lion");

   main.setAnimal(zoo1, gorilla);
   main.setAnimal(zoo2, frog);

   main.setAnimal(zoo2, lion);
   main.setAnimal(zoo2, zebra);

我建立了一种方法来打印那里的动物园和各自的动物:

 String text = "";

        for(Map.Entry<Zoo, Animals> entry : zoo.entrySet()) {

            Zoo key = entry.getKey();
            Animals value = entry.getValue();

            text += key.toString() + "\n";

            text += value.toString() + "\n";


        }

        return text;

但我得到了这个:

France 1 
gorilla

Spain 2 
Zebra

而不是

France 1
Gorilla

Spain 2
frog
lion
zebra

如何获得完整的动物清单?

0 个答案:

没有答案