У меня тоже удаляет, но не эпрувит.
public class Solution {
static Cat cat1 = new Cat();
static Cat cat2 = new Cat();
static Cat cat3 = new Cat();
public static void main(String[] args) {
Set<Cat> cats = createCats();
cats.remove(cat3);//напишите тут ваш код. step 3 - пункт 3
printCats(cats);
}
private static Set<Cat> createCats() {
HashSet<Cat> cats = new HashSet<>();
cats.add( cat1 );//напишите тут ваш код. step 2 - пункт 2
cats.add( cat2 );//напишите тут ваш код. step 2 - пункт 2
cats.add( cat3 );//напишите тут ваш код. step 2 - пункт 2
return cats;
}
private static void printCats(Set<Cat> cats) {
for (Cat cat : cats){
System.out.println("This is a cat: "+cat);// step 4 - пункт 4
}
}
public static class Cat{
Cat(){ }
}// step 1 - пункт 1
}
Вывод:
This is a cat: Level08.Solution$Cat@22a71081
This is a cat: Level08.Solution$Cat@2d6a9952
Process finished with exit code 0
package com.javarush.task.task08.task0819;
import java.util.HashSet;
import java.util.Set;
/*
Set из котов
*/
public class Solution {
static Cat cat1 = new Cat();
static Cat cat2 = new Cat();
static Cat cat3 = new Cat();
public static void main(String[] args) {
Set<Cat> cats = createCats();
cats.remove(cat3);//напишите тут ваш код. step 3 - пункт 3
printCats(cats);
}
public static Set<Cat> createCats() {
HashSet<Cat> cats = new HashSet<>();
cats.add( cat1 );//напишите тут ваш код. step 2 - пункт 2
cats.add( cat2 );
cats.add( cat3 );
return cats;
}
public static void printCats(Set<Cat> cats) {
for (Cat cat : cats){
System.out.println(cat);// step 4 - пункт 4
}
}
public static class Cat{
Cat(){
}
}// step 1 - пункт 1
}