| 12345678910111213141516171819202122232425262728293031323334353637383940 |
-
- import java.util.ArrayList;
-
- /**
- * @author leon on 4/19/18.
- * this class is an abstraction of how Animals are stored and retrieved
- */
- class AnimalWarehouse<AnimalType extends Animal> {
- private volatile ArrayList<AnimalType> list = new ArrayList<>();
-
- public void add(AnimalType animal) {
- list.add(animal);
- }
-
- public AnimalType getAnimalById(int id) {
- for(AnimalType animal : list) {
- if(animal.getId() == id) {
- return animal;
- }
- }
- return null;
- }
-
- public void removeAnimal(Animal animal) {
- list.remove(animal);
- }
-
- public void removeAnimalById(int id) {
- removeAnimal(getAnimalById(id));
- }
-
- public Integer getNumberOfAnimals() {
- return list.size();
- }
-
- public void clear() {
- list.clear();
- }
- }
|