Соответствие протоколу Hashable позволяет однозначно идентифицировать каждый 👤 в наборе, если одно свойство отличается. Этот уникальный идентификатор, называемый хэш-значением, можно использовать для поиска члена в Set за постоянное время (O(1)). Эта эффективность является результатом того, что метод contains(_:) имеет прямой доступ к каждому соответствующему адресу памяти в хеш-таблице, вместо того, чтобы выполнять итерацию по каждому элементу, как в Массивы. Начиная с Swift 4.2, реализация базового вычисляемого свойства hashValue автоматически обеспечивается путем передачи свойств значения в combine(_:) структуры Hasher. >, а затем с помощью метода finalize() получить Int.