Object n = itr.next();
// if(n.getClass() == Kot) zwierzeta.remove(n);
Wondering about this line. There is an error when i try to compare if n elemenet in the set is object Cat. But i dont know how to write a statement after ==
package pl.codegym.task.task08.task0820;
import java.util.HashSet;
import java.util.Set;
import java.util.Iterator;
/*
Zwierzęcy secik
*/
public class Solution {
public static void main(String[] args) {
Set<Kot> koty = utworzKoty();
Set<Pies> psy = utworzPsy();
Set<Object> zwierzeta = dolacz(koty, psy);
printZwierzeta(zwierzeta);
usunKoty(zwierzeta, koty);
printZwierzeta(zwierzeta);
}
public static Set<Kot> utworzKoty() {
HashSet<Kot> wynik = new HashSet<Kot>();
wynik.add(new Kot()) ;
wynik.add(new Kot()) ;
wynik.add(new Kot()) ;
wynik.add(new Kot()) ;
return wynik;
}
public static Set<Pies> utworzPsy() {
HashSet<Pies> wynik = new HashSet<Pies>();
wynik.add(new Pies());
wynik.add(new Pies());
wynik.add(new Pies());
return wynik;
}
public static Set<Object> dolacz(Set<Kot> koty, Set<Pies> psy) {
// HashSet<Object> merged = mergeSet(koty,psy);
HashSet<Object> merged = new HashSet<Object>();
merged.addAll(koty);
merged.addAll(psy);
return merged;
}
public static void usunKoty(Set<Object> zwierzeta, Set<Kot> koty) {
Iterator<Object> itr = zwierzeta.iterator();
while(itr.hasNext()) {
Object n = itr.next();
// if(n.getClass() == Kot) zwierzeta.remove(n);
System.out.println(n.getClass());
}
}
public static void printZwierzeta(Set<Object> zwierzeta) {
//tutaj wpisz swój kod
}
public static class Kot{
}
public static class Pies{
}
}