gpt4 book ai didi

java - 如何使用集合对象打印所有动物

转载 作者:行者123 更新时间:2023-12-02 11:01:58 26 4
gpt4 key购买 nike

我如何使用集合对象打印所有Animals:

Collection<Animal> c = animals.values();

我已经在技术上使用entrySet完成了它,但是这是一种更高级的方法,这不是我需要做的。

在不使用 entrySets 的情况下,如何使用带有简单 foreach 循环的集合对象来打印所有动物?

任何有关此问题的帮助或建议将不胜感激,谢谢! :)

动物园类:

public class MyZoo
{
private String zooId;
private int nextAnimalIdNumber;
private TreeMap<String, Animal> animals;
private Animal animal;

public MyZoo(String zooId)
{
this.zooId = zooId.trim().substring(0,3).toUpperCase();
nextAnimalIdNumber = 0;
animals = new TreeMap<String, Animal>();
}

public void addAnimal(Animal animal)
{
animals.put(animal.getName(), animal);
this.animal = animal;
}

public void printAllAnimals()
{
Collection<Animal> c = animals.values();
}
}

动物类别:

public class Animal
{
private String id;
private String species;
private String name;

public Animal(String species, String name, MyZoo owner)
{
id = owner.allocateId();
this.species = species;
this.name = name;
}

public String getId()
{
return id;
}

public String getName()
{
return name;
}

public String getSpecies()
{
return species;
}

public String toString()
{
return id + " " + name + ": a " + species;
}
}

最佳答案

您可以使用 for 循环:

for (Animal a: animals) {
System.out.println(a);
}

我更喜欢更简洁:使用 lambda。

animals.stream().forEach(System.out::println);

关于java - 如何使用集合对象打印所有动物,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51264529/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com