그래서 내가 만든 모든 애완 동물을 outprint하려고합니다. 주로 내가 문제 removeCats, 내가 그렇게 생각 ... 문제가 어떻게 그것을 제대로 컴파일하게 내 removeCats 내 메서드를 변경할 수 있습니까?방법 remove/removeAll does not work 正しく
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);
}
// 2. 여기 나는 4 고양이를 반환해야합니다 메서드 createCats를 확인하십시오.
public static Set<Cat> createCats()
{
Set<Cat> result = new HashSet<Cat>();
result.add(new Cat());
result.add(new Cat());
result.add(new Cat());
result.add(new Cat());
return result;
}
// 3. 여기서 나는 3 마리의 개를 돌려 주어야하는 createDogs 메소드를 만든다.
public static Set<Dog> createDogs()
{
Set<Dog> resultD = new HashSet<Dog>();
resultD.add(new Dog());
resultD.add(new Dog());
resultD.add(new Dog());
return resultD;
}
// 4. 여기서 나는 메소드 조인을 만든다. 이것은 모든 고양이와 개를 돌려 주어야한다.
public static Set<Object> join(Set<Cat> cats, Set<Dog> dogs)
{
Set<Object> lol = new HashSet<Object>();
lol.add(new Cat());
lol.add(new Dog());
return lol;
}
// 5. 방법 removeCats 모든 고양이
public static void removeCats(Set<Object> pets, Set<Cat> cats)
{
Iterator<Object> it = pets.iterator();
while(it.hasNext()){
Object e = it.next();
if(pets.containsAll(cats))
pets.removeAll(cats);
}
}
// (6)를 제거해야합니다. printPets 메서드는 그가 포함하고있는 모든 동물을 화면에 출력해야합니다. 새 줄에있는 모든 동물.
public static void printPets(Set<Object> pets)
{
for (Object s : pets){
System.out.println(s);
}
}
**//1. Inside class solution im making class cat and dog.**
public static class Cat{
}
public static class Dog{
}
반복기를 사용하지 않는 이유는 무엇입니까? 당신은 객체를 추출하지만, 아무것도하지 않습니다. –
질문하지 않았습니다. –
만약 내가 그것을 e == cats로 바꾼다면, 그것 또한 corectly로 작동하지 않습니다. –