Для решения задачи можно использовать коллекцию HashSet для быстрого поиска элементов второго списка и затем фильтровать первый список. Вот пример на Java:
В базовом классе Object. Метод equals по умолчанию сравнивает ссылки объектов (this == obj). Метод hashCode по умолчанию возвращает целочисленное значение, полученное, как правило, по адресу объекта в памяти.
HashMap в Java реализует структуру данных на основе хеш-таблицы, где элементы хранятся в несортированном порядке, а доступ к ним происходит по хеш-коду ключа.