Задача прошла тестирование,но я не совсем понимаю почему элемент удалился.Как я понял с предыдущих примеров, в цикле foreach мы не можем удалят элементы коллекции,а только смотреть.Тогда почему без объявления итератора все сработало?
public class Solution {
public static void main(String[] args) {
Set<Cat> cats = createCats();
for(Cat c : cats) {
cats.remove(c);
break;
}
printCats(cats);
}
public static Set<Cat> createCats() {
HashSet<Cat> set= new HashSet<>();
for(int i =0 ;i<3;i++){
set.add(new Cat());
}
return set;
}
public static void printCats(Set<Cat> cats) {
for (Cat cat :
cats) {
System.out.println(cat);
}
}
public static class Cat{
}
}