Почему мой HashSet позволяет дублировать объекты в Java, даже если значения одинаковы? [дубликат]JAVA

Программисты JAVA общаются здесь
Anonymous
Почему мой HashSet позволяет дублировать объекты в Java, даже если значения одинаковы? [дубликат]

Сообщение Anonymous »

Я пытаюсь сохранить уникальные объекты в HashSet, но он по-прежнему допускает дубликаты, даже если значения одинаковы.
Вот мой код:

Код: Выделить всё

import java.util.HashSet;
import java.util.Set;

class Student {
int id;

Student(int id) {
this.id = id;
}
}

public class Test {
public static void main(String[] args) {
Set students = new HashSet();

students.add(new Student(1));
students.add(new Student(1));

System.out.println(students.size());
}
}
Ожидаемый результат: Фактический результат: Почему HashSet допускает дублирование объектов, даже если идентификатор один и тот же?
Нужно ли мне что-то переопределить в классе Student, чтобы он работал правильно?>

Вернуться в «JAVA»