Можно ли использовать вызов других методов в методе в данном случае? Из-за этого вроде не ругается
package com.javarush.task.task08.task0820;
import java.util.HashSet;
import java.util.Set;
/*
Множество всех животных
*/
public class Solution {
public static void main(String[] args) {
Set<Cat> cats = createCats();
Set<Dog> dogs = createDogs();
Set<Object> pets = join(cats, dogs);
printPets(pets);
removeCats(pets, cats);
printPets(pets);
}
public static Set<Cat> createCats() {
Set<Cat> resultCat = new HashSet<Cat>();
for (int i = 0; i < 4; i++) {
Cat cat = new Cat();
resultCat.add(cat);
}
return resultCat;
}
public static Set<Dog> createDogs() {
Set<Dog> resultDog = new HashSet<Dog>();
for (int i = 0; i < 3; i++) {
Dog dog = new Dog();
resultDog.add(dog);
}
return resultDog;
}
public static Set<Object> join(Set<Cat> cats, Set<Dog> dogs) {
Set<Object> result = new HashSet<>();
result.addAll(createCats());
result.addAll(createDogs());
return result;
}
public static void removeCats(Set<Object> pets, Set<Cat> cats) {
Set<Object> copyPets = join(createCats(), createDogs());
for (Object obj : copyPets) {
pets.removeAll(cats);
}
}
public static void printPets(Set<Object> pets) {
for (Object obj : pets) {
System.out.println(obj);
}
}
public static class Cat {
}
public static class Dog {
}
}