Поясните разницу Почему этот код сработал:
public static HashSet<Integer> removeAllNumbersGreaterThan10(HashSet<Integer> set) {
    // напишите тут ваш код
    Iterator<Integer> numbersIterator = set.iterator();
    while (numbersIterator.hasNext()) {
        Integer nextNumbers = numbersIterator.next();
        if (nextNumbers > 10) {
            numbersIterator.remove();
        }
    }
    return set;
}

а этот нет:
public static HashSet<Integer> removeAllNumbersGreaterThan10(HashSet<Integer> set) {
    // напишите тут ваш код
    for (int i = 0; i < 20; i++) {
        if (i > 10)
            set.remove(i);
    }
    return set;
}